---
Fuzzer filename: "InjectorFuzzer"
Fuzzing method: "fuzzerTestOneInput"
All functions:
  Function list name: "All functions"
  Elements:
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].bootstrap$(java.util.function.Predicate)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].<init>(java.util.function.Predicate)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].<init>(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].<init>(java.util.function.Predicate)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$1(java.util.function.Predicate,java.util.stream.Stream)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$1(java.util.function.Predicate,java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$1(java.util.function.Predicate,java.util.stream.Stream)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder"
    linkageType: ""
    functionLinenumber: 12
    functionLinenumberEnd: 14
    functionDepth: 2
    returnType: "java.util.Optional"
    argCount: 2
    argTypes:
    - "java.util.function.Predicate"
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].bootstrap$(java.util.function.Predicate)"
    - "[java.util.stream.Stream].skip(long)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].findFirst()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.util.stream.Stream].skip(long)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].bootstrap$(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.util.stream.Stream].findFirst()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].bootstrap$(java.util.function.Predicate)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].<init>(java.util.function.Predicate)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].<init>(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].<init>(java.util.function.Predicate)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getType__80].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getType__80"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getType__80].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getType__80:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getType__80].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getType__80].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getType__80"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getType__80:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getType__80].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getType__80"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].getType()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getType__80:-1,1"
      Dst: "[java.lang.reflect.Field].getType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].<init>()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$0(java.lang.reflect.Constructor)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$0(java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$0(java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:305,1"
      Dst: "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.Initializer"
    - "com.google.inject.internal.ProcessedBindingData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor:48,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor].visit(com.google.inject.Binding<T>)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 72
    functionDepth: 11
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - "[com.google.inject.internal.Errors].voidProviderMethod()"
    - "[com.google.inject.internal.Errors].missingConstantValues()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.internal.Errors].bindingToProvider()"
    - "[com.google.inject.internal.BindingProcessor$1].<init>(com.google.inject.internal.BindingProcessor,com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ConstructorBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ExposedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.UntargettedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    functionUses: 1
    ICount: 32
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingProcessor:55"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor:66"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.BindingProcessor:65"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.BindingProcessor:56"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor:61"
        BranchSideFuncs:
        - "getUserSuppliedProvider()"
      - BranchSide: "com.google.inject.internal.BindingProcessor:60"
        BranchSideFuncs:
        - "missingConstantValues()"
    - Branch String: "com.google.inject.internal.BindingProcessor:57"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor:60"
        BranchSideFuncs:
        - "missingConstantValues()"
    - Branch String: "com.google.inject.internal.BindingProcessor:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor:71"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "bindingToProvider()"
      - BranchSide: "com.google.inject.internal.BindingProcessor:70"
        BranchSideFuncs:
        - "acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
        - "<init>(com.google.inject.internal.BindingProcessor,com.google.inject.internal.BindingImpl)"
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor:54,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.BindingProcessor:54,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.BindingProcessor:54,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.BindingProcessor:55,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.BindingProcessor:57,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.BindingProcessor:59,1"
      Dst: "[com.google.inject.internal.Errors].voidProviderMethod()"
    - Src: "com.google.inject.internal.BindingProcessor:61,1"
      Dst: "[com.google.inject.internal.Errors].missingConstantValues()"
    - Src: "com.google.inject.internal.BindingProcessor:63,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.BindingProcessor:67,1"
      Dst: "[com.google.inject.internal.Errors].bindingToProvider()"
    - Src: "com.google.inject.internal.BindingProcessor:71,1"
      Dst: "[com.google.inject.internal.BindingProcessor$1].<init>(com.google.inject.internal.BindingProcessor,com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor:71,1"
      Dst: "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.Key].getTypeLiteral()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getRawType()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].voidProviderMethod()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:379,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionDepth: 9
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 39
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:664,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionDepth: 8
    returnType: "com.google.inject.internal.Errors"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.util.List,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].getSources()"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:669,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:669,1"
      Dst: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.util.List,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Errors:669,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].getSources()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 633
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    - "[java.util.List].add(int,java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:635"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:640"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:639"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Errors:636"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:634"
        BranchSideFuncs:
        - "add(int,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Errors:633"
        BranchSideFuncs:
        - "newArrayList()"
    Callsites:
    - Src: "com.google.inject.internal.Errors:634,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.Errors:637,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.util.List,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionDepth: 7
    returnType: "com.google.inject.spi.Message"
    argCount: 5
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.Throwable"
    - "java.util.List"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,java.util.List,java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:157,1"
      Dst: "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Messages:158,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,java.util.List,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:64"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:66"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.Messages:65,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:67,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 169
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    functionUses: 12
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:164"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:168"
        BranchSideFuncs:
        - "getDeclaringSource()"
      - BranchSide: "com.google.inject.internal.Messages:167"
        BranchSideFuncs:
        - "convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    Callsites:
    - Src: "com.google.inject.internal.Messages:166,1"
      Dst: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - Src: "com.google.inject.internal.Messages:168,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    functionSourceFile: "com.google.inject.spi.ElementSource"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 178
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.Messages$Converter].appliesTo(java.lang.Object)"
    - "[com.google.inject.internal.Messages].appendModules(java.lang.Object,com.google.inject.spi.ElementSource)"
    - "[com.google.inject.internal.Messages$Converter].convert(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 16
    EdgeCount: 278
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:172"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:177"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "appliesTo(java.lang.Object)"
        - "next()"
      - BranchSide: "com.google.inject.internal.Messages:176"
        BranchSideFuncs:
        - "appendModules(java.lang.Object,com.google.inject.spi.ElementSource)"
    - Branch String: "com.google.inject.internal.Messages:173"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:176"
        BranchSideFuncs:
        - "convert(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Messages:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:172,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.Messages:172,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.Messages:172,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.Messages:173,1"
      Dst: "[com.google.inject.internal.Messages$Converter].appliesTo(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:174,1"
      Dst: "[com.google.inject.internal.Messages$Converter].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:174,1"
      Dst: "[com.google.inject.internal.Messages].appendModules(java.lang.Object,com.google.inject.spi.ElementSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Messages].appendModules(java.lang.Object,com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 186
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SourceFormatter].getModuleStack(com.google.inject.spi.ElementSource)"
    - "[java.lang.String].length()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:182"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:185"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:181,1"
      Dst: "[com.google.inject.internal.SourceFormatter].getModuleStack(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.internal.Messages:182,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.Messages:185,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SourceFormatter].getModuleStack(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ElementSource].getModuleClassNames()"
    - "[com.google.common.collect.Lists].newArrayList(java.lang.Iterable)"
    - "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - "[java.util.ArrayList].addAll(int,java.util.Collection)"
    - "[java.util.ArrayList].size()"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[java.util.List].addAll(int,java.util.Collection)"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:107"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:110"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:109"
        BranchSideFuncs:
        - "newArrayList(java.lang.Iterable)"
    - Branch String: "com.google.inject.internal.SourceFormatter:112"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:116"
        BranchSideFuncs:
        - "addAll(int,java.util.Collection)"
        - "getOriginalElementSource()"
        - "getModuleClassNames()"
      - BranchSide: "com.google.inject.internal.SourceFormatter:115"
        BranchSideFuncs:
        - "size()"
    - Branch String: "com.google.inject.internal.SourceFormatter:116"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:119"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:118"
        BranchSideFuncs:
        - "join(java.lang.CharSequence,java.lang.Iterable)"
        - "reverse(java.util.List)"
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:110,1"
      Dst: "[com.google.inject.spi.ElementSource].getModuleClassNames()"
    - Src: "com.google.inject.internal.SourceFormatter:110,1"
      Dst: "[com.google.common.collect.Lists].newArrayList(java.lang.Iterable)"
    - Src: "com.google.inject.internal.SourceFormatter:112,1"
      Dst: "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - Src: "com.google.inject.internal.SourceFormatter:114,1"
      Dst: "[java.util.List].addAll(int,java.util.Collection)"
    - Src: "com.google.inject.internal.SourceFormatter:116,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.SourceFormatter:119,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.SourceFormatter:119,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ElementSource].getModuleClassNames()"
    functionSourceFile: "com.google.inject.spi.ElementSource"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].getModuleClassNames()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ElementSource:122,1"
      Dst: "[com.google.inject.spi.ModuleSource].getModuleClassNames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].getModuleClassNames()"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.spi.ModuleSource:106"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ModuleSource:111"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.ModuleSource:110"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.spi.ModuleSource:104,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.spi.ModuleSource:108,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.spi.ModuleSource:111,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    functionSourceFile: "com.google.inject.spi.ElementSource"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "com.google.inject.spi.ElementSource"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,java.util.List,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.util.List"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Message:66,1"
      Dst: "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.GenericErrorDetail"
    linkageType: ""
    functionLinenumber: 16
    functionLinenumberEnd: 19
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.String"
    - "java.util.List"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.GenericErrorDetail:17,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.GenericErrorDetail:17,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 673
    functionLinenumberEnd: 679
    functionDepth: 0
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 10
    ICount: 12
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:674"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:677"
        BranchSideFuncs:
        - "newArrayList()"
      - BranchSide: "com.google.inject.internal.Errors:676"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:675,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.Errors:677,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Errors].missingConstantValues()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:384,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].bindingToProvider()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:261,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].<init>(com.google.inject.internal.BindingProcessor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.BindingProcessor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].<init>(com.google.inject.internal.AbstractBindingProcessor,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:72,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].<init>(com.google.inject.internal.AbstractBindingProcessor,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 260
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.BindingProcessor].bindExposed(com.google.inject.spi.PrivateElements,com.google.inject.Key)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 226
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingProcessor:256"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor:259"
        BranchSideFuncs:
        - "hasNext()"
        - "bindExposed(com.google.inject.spi.PrivateElements,com.google.inject.Key)"
        - "iterator()"
        - "next()"
        - "getExposedKeys()"
      - BranchSide: "com.google.inject.internal.BindingProcessor:258"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor:256,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - Src: "com.google.inject.internal.BindingProcessor:256,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.BindingProcessor:256,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.BindingProcessor:256,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.BindingProcessor:257,1"
      Dst: "[com.google.inject.internal.BindingProcessor].bindExposed(com.google.inject.spi.PrivateElements,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingProcessor:259,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingProcessor].bindExposed(com.google.inject.spi.PrivateElements,com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ExposedKeyFactory].<init>(com.google.inject.Key,com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ExposedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.Key,com.google.inject.internal.InternalFactory,com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedSource(com.google.inject.Key)"
    - "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor:263,1"
      Dst: "[com.google.inject.internal.ExposedKeyFactory].<init>(com.google.inject.Key,com.google.inject.spi.PrivateElements)"
    - Src: "com.google.inject.internal.BindingProcessor:264,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - Src: "com.google.inject.internal.BindingProcessor:268,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingProcessor:268,1"
      Dst: "[com.google.inject.internal.ExposedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.Key,com.google.inject.internal.InternalFactory,com.google.inject.spi.PrivateElements)"
    - Src: "com.google.inject.internal.BindingProcessor:265,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedKeyFactory].<init>(com.google.inject.Key,com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.internal.ExposedKeyFactory"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedKeyFactory:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.CreationListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:35,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.Key,com.google.inject.internal.InternalFactory,com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedBindingImpl:40,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner].<init>()"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleAnnotatedMethodScanner].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner:48,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScanner].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner].annotationClasses()"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner].prepareMethod(com.google.inject.Binder,java.lang.annotation.Annotation,com.google.inject.Key<T>,com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 98
    functionDepth: 12
    returnType: "com.google.inject.Key<T>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.annotation.Annotation"
    - "com.google.inject.Key<T>"
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.ProvidesMethodScanner].findMapKeyAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMultibinder].getKeyForNewItem()"
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.ProvidesMethodScanner].typeAndValueOfMapKey(java.lang.'annotation'.Annotation)"
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].getKeyForNewValue(java.lang.Object)"
    - "[java.lang.Enum].ordinal()"
    - "[com.google.inject.internal.RealOptionalBinder].getKeyForDefaultBinding()"
    - "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.RealOptionalBinder].getKeyForActualBinding()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.multibindings.ProvidesIntoOptional].value()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 67
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:61"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:68"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:67"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:66"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:65"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:68"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:73"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:72"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:69"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:72"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:71"
        BranchSideFuncs:
        - "getKeyForNewItem()"
        - "newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:73"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:86"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:85"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:74"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:77"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:78"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:82"
        BranchSideFuncs:
        - "typeAndValueOfMapKey(java.lang.'annotation'.Annotation)"
        - "newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:97"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:90"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:89"
        BranchSideFuncs:
        - "ordinal()"
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner:59,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:60,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner].findMapKeyAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:63,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:72,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:72,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getKeyForNewItem()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:83,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner].typeAndValueOfMapKey(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:84,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.Key)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:85,1"
      Dst: "[com.google.inject.internal.RealMapBinder].getKeyForNewValue(java.lang.Object)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:90,1"
      Dst: "[com.google.inject.multibindings.ProvidesIntoOptional].value()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:90,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:92,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:92,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].getKeyForDefaultBinding()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:94,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].getKeyForActualBinding()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:97,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:97,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 21
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.InjectionPoint].getMember()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.lang.reflect.Member"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner].findMapKeyAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 148
    functionDepth: 2
    returnType: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forError()"
    - "[com.google.inject.internal.RealElement:com.google.inject.internal.RealOptionalBinder$BaseAnnotation:com.google.inject.internal.UniqueAnnotations$1:com.google.inject.name.NamedImpl].annotationType()"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.Class].isArray()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forPossiblyNullAnnotation(java.lang.'annotation'.Annotation)"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.multibindings.MapKey].unwrapValue()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:120"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:147"
        BranchSideFuncs:
        - "getAnnotations()"
        - "getAnnotation(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:146"
        BranchSideFuncs:
        - "forPossiblyNullAnnotation(java.lang.'annotation'.Annotation)"
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:122"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:119"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:118"
        BranchSideFuncs:
        - "getAnnotations()"
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:123"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:127"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:126"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:127"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:144"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
        - "forError()"
        - "annotationType()"
        - "getDeclaredMethod(java.lang.String,java.lang.Class[])"
        - "isArray()"
        - "getReturnType()"
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:143"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:131"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:142"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner:120,1"
      Dst: "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:121,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:121,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:124,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:125,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forError()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:127,1"
      Dst: "[com.google.inject.multibindings.MapKey].unwrapValue()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:130,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:131,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:131,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:147,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forPossiblyNullAnnotation(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forError()"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].<init>(java.lang.'annotation'.Annotation,boolean)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError:114,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].<init>(java.lang.'annotation'.Annotation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].<init>(java.lang.'annotation'.Annotation,boolean)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.annotation.Annotation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError:104,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].forPossiblyNullAnnotation(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].<init>(java.lang.'annotation'.Annotation,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError:110,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner$AnnotationOrError].<init>(java.lang.'annotation'.Annotation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].getKeyForNewItem()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 132
    functionDepth: 9
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    - "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder:128"
        BranchSideFuncs:
        - "isInitialized()"
        - "get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.RealMultibinder:127"
        BranchSideFuncs:
        - "isInitialized()"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:128,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMultibinder:128,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMultibinder:130,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    - Src: "com.google.inject.internal.RealMultibinder:131,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    - Src: "com.google.inject.internal.RealMultibinder:131,1"
      Dst: "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
    - Src: "com.google.inject.internal.RealMultibinder:129,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.spi.Message].<init>(java.lang.String)"
    - "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:93"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:92"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
        - "of(java.lang.Object)"
        - "<init>(java.lang.Iterable)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:93,1"
      Dst: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Errors:93,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.Errors:93,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:93,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 682
    functionLinenumberEnd: 684
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:683,1"
      Dst: "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:84,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.spi.Message:84,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,java.util.List,java.lang.String,java.lang.Throwable)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:71,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,java.util.List,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.ConfigurationException"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    - "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 12
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.ConfigurationException:38,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    - Src: "com.google.inject.ConfigurationException:39,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    - Src: "com.google.inject.ConfigurationException:40,1"
      Dst: "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - Src: "com.google.inject.ConfigurationException:40,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 472
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].nameOf(com.google.inject.Key)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:468"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:471"
        BranchSideFuncs:
        - "nameOf(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:470"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:469,1"
      Dst: "[com.google.inject.internal.Annotations].nameOf(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].nameOf(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 456
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getAnnotation()"
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.inject.internal.Annotations].isMarker(java.lang.Class)"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[java.lang.Class].getName()"
    - "[java.lang.annotation.Annotation].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 16
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:450"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:452"
        BranchSideFuncs:
        - "getAnnotation()"
        - "toString()"
      - BranchSide: "com.google.inject.internal.Annotations:451"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:450"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:452"
        BranchSideFuncs:
        - "getAnnotation()"
        - "toString()"
      - BranchSide: "com.google.inject.internal.Annotations:451"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:452"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:455"
        BranchSideFuncs:
        - "getName()"
        - "getAnnotationType()"
      - BranchSide: "com.google.inject.internal.Annotations:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:448,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    - Src: "com.google.inject.internal.Annotations:449,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.Annotations:450,1"
      Dst: "[com.google.inject.internal.Annotations].isMarker(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:451,1"
      Dst: "[java.lang.annotation.Annotation].toString()"
    - Src: "com.google.inject.internal.Annotations:453,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.Annotations:453,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Key].getAnnotation()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationTypeStrategy].getAnnotation()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotation()"
    - "[com.google.inject.Key$NullAnnotationStrategy].getAnnotation()"
    - "[com.google.inject.Key$AnnotationStrategy].getAnnotation()"
    functionUses: 8
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:161,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].getAnnotation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].getAnnotationType()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationTypeStrategy].getAnnotationType()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotationType()"
    - "[com.google.inject.Key$NullAnnotationStrategy].getAnnotationType()"
    - "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    functionUses: 12
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:148,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].isMarker(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethods()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:56"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:55"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:56,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "com.google.inject.internal.Element$Type"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String,int)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealElement:33,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - Src: "com.google.inject.internal.RealElement:33,1"
      Dst: "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "com.google.inject.internal.Element$Type"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealElement:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner].typeAndValueOfMapKey(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 169
    functionDepth: 8
    returnType: "com.google.inject.internal.TypeAndValue<?>"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.ProvidesMethodScanner$TypeAndValue].<init>(com.google.inject.TypeLiteral,java.lang.Object)"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].setAccessible(boolean)"
    - "[com.google.inject.TypeLiteral].getReturnType(java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[com.google.inject.multibindings.MapKey].unwrapValue()"
    functionUses: 1
    ICount: 39
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvidesMethodScanner:152"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:156"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvidesMethodScanner:155"
        BranchSideFuncs:
        - "getReturnType(java.lang.reflect.Method)"
        - "<init>(com.google.inject.TypeLiteral,java.lang.Object)"
        - "get(java.lang.Class)"
        - "setAccessible(boolean)"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "annotationType()"
        - "getDeclaredMethod(java.lang.String,java.lang.Class[])"
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner:152,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:152,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:152,1"
      Dst: "[com.google.inject.multibindings.MapKey].unwrapValue()"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:153,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:153,1"
      Dst: "[com.google.inject.internal.ProvidesMethodScanner$TypeAndValue].<init>(com.google.inject.TypeLiteral,java.lang.Object)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:156,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:157,1"
      Dst: "[java.lang.reflect.Method].setAccessible(boolean)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:159,1"
      Dst: "[com.google.inject.TypeLiteral].getReturnType(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:160,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.ProvidesMethodScanner:162,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidesMethodScanner$TypeAndValue].<init>(com.google.inject.TypeLiteral,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProvidesMethodScanner$TypeAndValue"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidesMethodScanner$TypeAndValue:177,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getReturnType(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 339
    functionDepth: 7
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Method].getGenericReturnType()"
    - "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:334,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:334,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:333,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:338,1"
      Dst: "[java.lang.reflect.Method].getGenericReturnType()"
    - Src: "com.google.inject.TypeLiteral:338,1"
      Dst: "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 6
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].resolveType(java.lang.reflect.Type)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:164,1"
      Dst: "[com.google.inject.TypeLiteral].resolveType(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:164,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].resolveType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 225
    functionDepth: 5
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].resolveTypeVariable(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.TypeVariable)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.inject.TypeLiteral].resolveType(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].arrayOf(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[java.util.TreeMap].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.text.Collator].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.util.Calendar].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.util.Vector].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.Date].clone()"
    - "[java.util.TreeSet].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.Properties].clone()"
    - "[java.security.Signature].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.BitSet].clone()"
    - "[java.util.EnumMap].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Object].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.util.Types].supertypeOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    functionUses: 6
    ICount: 78
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:170"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:170"
        BranchSideFuncs:
        - "resolveTypeVariable(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.TypeVariable)"
      - BranchSide: "com.google.inject.TypeLiteral:169"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:173"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:177"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:176"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:170"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:183"
        BranchSideFuncs:
        - "resolveTypeVariable(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.TypeVariable)"
      - BranchSide: "com.google.inject.TypeLiteral:182"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:181"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:177"
        BranchSideFuncs:
        - "getGenericComponentType()"
        - "arrayOf(java.lang.reflect.Type)"
    - Branch String: "com.google.inject.TypeLiteral:183"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:205"
        BranchSideFuncs:
        - "getOwnerType()"
      - BranchSide: "com.google.inject.TypeLiteral:204"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:187"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:184"
        BranchSideFuncs:
        - "getActualTypeArguments()"
      - BranchSide: "com.google.inject.TypeLiteral:183"
        BranchSideFuncs:
        - "getOwnerType()"
    - Branch String: "com.google.inject.TypeLiteral:190"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:201"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:200"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:192"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:187"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:186"
        BranchSideFuncs:
        - "getActualTypeArguments()"
    - Branch String: "com.google.inject.TypeLiteral:193"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:197"
        BranchSideFuncs:
        - "clone()"
      - BranchSide: "com.google.inject.TypeLiteral:196"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:201"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:201"
        BranchSideFuncs:
        - "newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
        - "getRawType()"
      - BranchSide: "com.google.inject.TypeLiteral:200"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:205"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:224"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "getLowerBounds()"
      - BranchSide: "com.google.inject.TypeLiteral:223"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:210"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:206"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:205"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "getLowerBounds()"
    - Branch String: "com.google.inject.TypeLiteral:212"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:215"
        BranchSideFuncs:
        - "supertypeOf(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.TypeLiteral:214"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:210"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:221"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:220"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:217"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:221"
        BranchSideFuncs:
        - "subtypeOf(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.TypeLiteral:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:172,1"
      Dst: "[com.google.inject.internal.MoreTypes].resolveTypeVariable(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.TypeVariable)"
    - Src: "com.google.inject.TypeLiteral:179,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.inject.TypeLiteral:180,1"
      Dst: "[com.google.inject.TypeLiteral].resolveType(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:181,1"
      Dst: "[com.google.inject.util.Types].arrayOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:185,1"
      Dst: "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - Src: "com.google.inject.TypeLiteral:189,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.TypeLiteral:194,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "com.google.inject.TypeLiteral:202,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.inject.TypeLiteral:202,1"
      Dst: "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.TypeLiteral:207,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.inject.TypeLiteral:208,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.inject.TypeLiteral:213,1"
      Dst: "[com.google.inject.util.Types].supertypeOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:218,1"
      Dst: "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 35
    CyclomaticComplexity: 10
  - functionName: "[com.google.inject.util.Types].arrayOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 4
    returnType: "java.lang.reflect.GenericArrayType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:69,1"
      Dst: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 484
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:481,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:482,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 169
    functionDepth: 2
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.Class].isArray()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    functionUses: 9
    ICount: 43
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:151"
        BranchSideFuncs:
        - "isArray()"
        - "canonicalize(java.lang.reflect.Type)"
        - "getComponentType()"
      - BranchSide: "com.google.inject.internal.MoreTypes:150"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:149"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:147"
        BranchSideFuncs:
        - "isArray()"
        - "canonicalize(java.lang.reflect.Type)"
        - "getComponentType()"
    - Branch String: "com.google.inject.internal.MoreTypes:151"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:154"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:153"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:154"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:158"
        BranchSideFuncs:
        - "getOwnerType()"
        - "getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
        - "<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.MoreTypes:157"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:162"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Type)"
        - "getGenericComponentType()"
      - BranchSide: "com.google.inject.internal.MoreTypes:161"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:168"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "getLowerBounds()"
        - "<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
      - BranchSide: "com.google.inject.internal.MoreTypes:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:149,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "com.google.inject.internal.MoreTypes:149,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "com.google.inject.internal.MoreTypes:149,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:149,1"
      Dst: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:156,1"
      Dst: "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - Src: "com.google.inject.internal.MoreTypes:156,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.inject.internal.MoreTypes:156,1"
      Dst: "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - Src: "com.google.inject.internal.MoreTypes:156,1"
      Dst: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.MoreTypes:160,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.inject.internal.MoreTypes:164,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.inject.internal.MoreTypes:164,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.inject.internal.MoreTypes:164,1"
      Dst: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "java.lang.reflect.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.ParameterizedType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:343"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:346"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:345"
        BranchSideFuncs:
        - "getActualTypeArguments()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:346,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 398
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].ensureOwnerType(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - "[java.util.TreeMap].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.text.Collator].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.util.Calendar].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.util.Vector].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.Date].clone()"
    - "[java.util.TreeSet].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.Properties].clone()"
    - "[java.security.Signature].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.BitSet].clone()"
    - "[java.util.EnumMap].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Object].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.lang.Class].getTypeParameters()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes].checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int,int)"
    functionUses: 2
    ICount: 47
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:368"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:364"
        BranchSideFuncs:
        - "clone()"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:363"
        BranchSideFuncs:
        - "<init>()"
        - "ensureOwnerType(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:373"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:391"
        BranchSideFuncs:
        - "getTypeParameters()"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:390"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:377"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:386"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:385"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:386"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:391"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:390"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:392"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:364,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:366,1"
      Dst: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].ensureOwnerType(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:368,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:371,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:375,1"
      Dst: "[java.lang.Class].getTypeParameters()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:381,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:381,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int,int)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:381,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:393,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:394,1"
      Dst: "[com.google.inject.internal.MoreTypes].checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].ensureOwnerType(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    - "[java.lang.Class].getEnclosingClass()"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:461"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:472"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:471"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:463"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:462"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:461"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:464"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:462"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:461"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:467"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:463"
        BranchSideFuncs:
        - "getEnclosingClass()"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:462"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:468"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:462"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:464,1"
      Dst: "[java.lang.Class].getEnclosingClass()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:463,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.MoreTypes].checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 582
    functionLinenumberEnd: 589
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].isPrimitive()"
    functionUses: 3
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:583"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:583"
        BranchSideFuncs:
        - "isPrimitive()"
      - BranchSide: "com.google.inject.internal.MoreTypes:582"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.MoreTypes:584"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:583"
        BranchSideFuncs:
        - "isPrimitive()"
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes:582"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:584,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.MoreTypes:583,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 540
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type[]"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes].checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 42
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:523"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:522"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:521"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:524"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:523"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:522"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:526"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:534"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:533"
        BranchSideFuncs:
        - "checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "canonicalize(java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:529"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:527"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:526"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:522,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:523,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:527,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:528,1"
      Dst: "[com.google.inject.internal.MoreTypes].checkNotPrimitive(java.lang.reflect.Type,java.lang.String)"
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:530,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:60,1"
      Dst: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].supertypeOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 2
    returnType: "java.lang.reflect.WildcardType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:87,1"
      Dst: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 2
    returnType: "java.lang.reflect.WildcardType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:79,1"
      Dst: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 4
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    functionUses: 26
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:145,1"
      Dst: "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 2
    ICount: 14
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.TypeLiteral:83,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:83,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:84,1"
      Dst: "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:85,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 207
    functionDepth: 1
    returnType: "java.lang.Class<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Type,java.lang.String)"
    functionUses: 3
    ICount: 34
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:173"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:176"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:177"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:191"
        BranchSideFuncs:
        - "getRawType()"
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes:190"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:191"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:195"
        BranchSideFuncs:
        - "newInstance(java.lang.Class,int)"
        - "getGenericComponentType()"
        - "getRawType(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes:194"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:195"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:197"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:195"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:200"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
        - "getClass()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:183,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.inject.internal.MoreTypes:188,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.MoreTypes:188,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.MoreTypes:184,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:192,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.inject.internal.MoreTypes:193,1"
      Dst: "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:193,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "com.google.inject.internal.MoreTypes:206,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Type,java.lang.String)"
    - Src: "com.google.inject.internal.MoreTypes:206,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder].getKeyForNewValue(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 283
    functionDepth: 11
    returnType: "com.google.inject.Key"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getValueType()"
    - "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getKeyType()"
    - "[com.google.inject.internal.RealMultibinder].getSetName()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].<init>(java.lang.Object,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMultibinder].addBinding()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    functionUses: 1
    ICount: 28
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder:272"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder:271"
        BranchSideFuncs:
        - "getSetName()"
        - "getKeyType()"
        - "toString()"
        - "addBinding()"
        - "toProvider(com.google.inject.Provider)"
        - "get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
        - "getEntrySetBinder()"
        - "<init>(java.lang.Object,com.google.inject.Key)"
        - "getValueType()"
        - "isInitialized()"
        - "<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.RealMapBinder:270"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "isInitialized()"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:271,1"
      Dst: "[com.google.inject.internal.Errors].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "com.google.inject.internal.RealMapBinder:272,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder:272,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMapBinder:274,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - Src: "com.google.inject.internal.RealMapBinder:278,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getValueType()"
    - Src: "com.google.inject.internal.RealMapBinder:280,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getSetName()"
    - Src: "com.google.inject.internal.RealMapBinder:280,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getKeyType()"
    - Src: "com.google.inject.internal.RealMapBinder:280,1"
      Dst: "[com.google.inject.TypeLiteral].toString()"
    - Src: "com.google.inject.internal.RealMapBinder:280,1"
      Dst: "[com.google.inject.internal.RealElement].<init>(java.lang.String,com.google.inject.internal.Element$Type,java.lang.String)"
    - Src: "com.google.inject.internal.RealMapBinder:277,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.RealMapBinder:281,1"
      Dst: "[com.google.inject.internal.RealMultibinder].addBinding()"
    - Src: "com.google.inject.internal.RealMapBinder:281,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].<init>(java.lang.Object,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:281,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Errors].checkNotNull(java.lang.Object,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 82
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.spi.Message].<init>(java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    - "[java.lang.Throwable].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:76"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:80"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:79"
        BranchSideFuncs:
        - "toString()"
        - "<init>(java.lang.String)"
        - "of(java.lang.Object)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.Iterable)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:80,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.Errors:81,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "com.google.inject.internal.Errors:81,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "com.google.inject.internal.Errors:81,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:81,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:76,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.spi.Message:76,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 660
    functionLinenumberEnd: 662
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:661"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:660"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 678
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMultibinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getValueType()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 670
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].getSetName()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:149,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getKeyType()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 664
    functionLinenumberEnd: 666
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].toString()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    functionUses: 25
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:140,1"
      Dst: "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 7
    ICount: 8
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:270"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:269"
        BranchSideFuncs:
        - "getName()"
        - "toString()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:270,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.MoreTypes:270,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder].addBinding()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 10
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMultibinder].getKeyForNewItem()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:135,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getKeyForNewItem()"
    - Src: "com.google.inject.internal.RealMultibinder:135,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].<init>(java.lang.Object,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1214
    functionLinenumberEnd: 1219
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].<init>(com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1215,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].<init>(com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].getKeyForDefaultBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 164
    functionDepth: 10
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - "[com.google.inject.internal.RealOptionalBinder].addDirectTypeBinding(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:161,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - Src: "com.google.inject.internal.RealOptionalBinder:162,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].addDirectTypeBinding(com.google.inject.Binder)"
    - Src: "com.google.inject.internal.RealOptionalBinder:163,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:544"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:544"
        BranchSideFuncs:
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:543"
        BranchSideFuncs:
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:544,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder].addDirectTypeBinding(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:150,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder:150,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder:150,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealOptionalBinder:151,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 362
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:360,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 598
    functionDepth: 5
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$DefaultImpl].<init>(java.lang.String)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBindingName()"
    - "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:594"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:597"
        BranchSideFuncs:
        - "getBindingName()"
        - "<init>(java.lang.String)"
        - "withAnnotation(java.lang.'annotation'.Annotation)"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:595,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBindingName()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:595,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$DefaultImpl].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:595,1"
      Dst: "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBindingName()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 613
    functionLinenumberEnd: 618
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].nameOf(com.google.inject.Key)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:614"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:617"
        BranchSideFuncs:
        - "nameOf(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:615,1"
      Dst: "[com.google.inject.internal.Annotations].nameOf(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$DefaultImpl].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$DefaultImpl"
    linkageType: ""
    functionLinenumber: 747
    functionLinenumberEnd: 750
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].<init>(java.lang.Class,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$DefaultImpl:748,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].<init>(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionDepth: 4
    returnType: "com.google.inject.Key<T>"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:316,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:316,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 359
    functionDepth: 3
    returnType: "com.google.inject.Key$AnnotationStrategy"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.Key].ensureRetainedAtRuntime(java.lang.Class)"
    - "[com.google.inject.Key].ensureIsBindingAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Annotations].isMarker(java.lang.Class)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].<init>(java.lang.'annotation'.Annotation)"
    - "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.'annotation'.Annotation)"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 3
    ICount: 14
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.Key:354"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:358"
        BranchSideFuncs:
        - "<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
      - BranchSide: "com.google.inject.Key:357"
        BranchSideFuncs:
        - "<init>(java.lang.'annotation'.Annotation)"
        - "canonicalizeIfNamed(java.lang.'annotation'.Annotation)"
    Callsites:
    - Src: "com.google.inject.Key:349,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.Key:350,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.Key:351,1"
      Dst: "[com.google.inject.Key].ensureRetainedAtRuntime(java.lang.Class)"
    - Src: "com.google.inject.Key:352,1"
      Dst: "[com.google.inject.Key].ensureIsBindingAnnotation(java.lang.Class)"
    - Src: "com.google.inject.Key:354,1"
      Dst: "[com.google.inject.internal.Annotations].isMarker(java.lang.Class)"
    - Src: "com.google.inject.Key:355,1"
      Dst: "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:358,1"
      Dst: "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:358,1"
      Dst: "[com.google.inject.Key$AnnotationInstanceStrategy].<init>(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 478
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:474,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:475,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionDepth: 2
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.Names].named(java.lang.String)"
    - "[jakarta.inject.Named].value()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:422"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:425"
        BranchSideFuncs:
        - "named(java.lang.String)"
      - BranchSide: "com.google.inject.internal.Annotations:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:423,1"
      Dst: "[jakarta.inject.Named].value()"
    - Src: "com.google.inject.internal.Annotations:423,1"
      Dst: "[com.google.inject.name.Names].named(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.Names].named(java.lang.String)"
    functionSourceFile: "com.google.inject.name.Names"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "com.google.inject.name.Named"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.name.Names:36,1"
      Dst: "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.name.NamedImpl:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.name.NamedImpl:30,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].<init>(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 425
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:422,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:423,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Key$AnnotationStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].computeHashCode()"
    functionUses: 5
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:130,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key:132,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.Key:133,1"
      Dst: "[com.google.inject.Key].computeHashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].computeHashCode()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationInstanceStrategy].hashCode()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[com.google.inject.TypeLiteral].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 2
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:138,1"
      Dst: "[com.google.inject.TypeLiteral].hashCode()"
    - Src: "com.google.inject.Key:138,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].hashCode()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 36
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].getKeyForActualBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionDepth: 10
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - "[com.google.inject.internal.RealOptionalBinder].addDirectTypeBinding(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:177,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - Src: "com.google.inject.internal.RealOptionalBinder:178,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].addDirectTypeBinding(com.google.inject.Binder)"
    - Src: "com.google.inject.internal.RealOptionalBinder:179,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 605
    functionDepth: 5
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$ActualImpl].<init>(java.lang.String)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBindingName()"
    - "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:601"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:604"
        BranchSideFuncs:
        - "getBindingName()"
        - "<init>(java.lang.String)"
        - "withAnnotation(java.lang.'annotation'.Annotation)"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:602,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBindingName()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:602,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$ActualImpl].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:602,1"
      Dst: "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$ActualImpl].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$ActualImpl"
    linkageType: ""
    functionLinenumber: 753
    functionLinenumberEnd: 756
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].<init>(java.lang.Class,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$ActualImpl:754,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].<init>(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].<init>(com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory,java.lang.Object,java.util.concurrent.locks.Lock)"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory"
    - "java.lang.Object"
    - "java.util.concurrent.locks.Lock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:135,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:137,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 185
    functionDepth: 2
    returnType: "com.google.common.collect.ListMultimap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].checkState()"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].detectPotentialLocksCycle()"
    - "[com.google.common.collect.ImmutableMultimap].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].isEmpty()"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].isEmpty()"
    - "[com.google.common.collect.ForwardingMultimap].isEmpty()"
    - "[com.google.common.collect.AbstractMultimap].isEmpty()"
    - "[com.google.common.collect.ArrayListMultimap].isEmpty()"
    - "[com.google.common.collect.LinkedListMultimap].isEmpty()"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].remove(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].remove(java.lang.Object)"
    - "[java.util.EnumMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantReadLock].lock()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantLock].lock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].lock()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantWriteLock].lock()"
    - "[java.util.concurrent.locks.ReentrantLock].lock()"
    - "[com.google.common.util.concurrent.ForwardingLock].lock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].lock()"
    - "[com.google.common.collect.LinkedHashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$MapMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].of()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimap].isEmpty()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 39
    EdgeCount: 137
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:156"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:166"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:160"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:144,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:146,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].checkState()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:158,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:159,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].detectPotentialLocksCycle()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:160,1"
      Dst: "[com.google.common.collect.Multimap].isEmpty()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:162,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:170,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:181,1"
      Dst: "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:184,1"
      Dst: "[com.google.common.collect.ImmutableListMultimap].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].checkState()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].containsKey(java.lang.Object)"
    - "[java.util.AbstractMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[java.util.jar.Attributes].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[java.util.EnumMap].containsKey(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.WeakHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$2].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$1].contains(java.lang.Object)"
    - "[java.util.concurrent.SynchronousQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$SubSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].contains(java.lang.Object)"
    - "[java.util.ArrayDeque].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1].contains(java.lang.Object)"
    - "[com.google.common.graph.EdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.FilteredMultimapValues].contains(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$3].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$3].contains(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$Values].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5$1$1].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].contains(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$Values].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$Values].contains(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$1].contains(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$2].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableAsList].contains(java.lang.Object)"
    - "[java.util.LinkedList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.graph.MultiEdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].contains(java.lang.Object)"
    - "[java.util.concurrent.ArrayBlockingQueue].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.TreeMultiset].contains(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].contains(java.lang.Object)"
    - "[java.util.concurrent.PriorityBlockingQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.HashMultiset].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].contains(java.lang.Object)"
    - "[java.util.ArrayList].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Keys].contains(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5].contains(java.lang.Object)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.graph.MapIteratorCache$1].contains(java.lang.Object)"
    - "[com.google.common.collect.CartesianList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$AccessQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.PriorityQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$Values].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$PermutationCollection].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].contains(java.lang.Object)"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$4].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].contains(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$Values].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Values].contains(java.lang.Object)"
    - "[com.google.common.collect.EnumMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntrySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntrySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$MapMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].values()"
    - "[com.google.common.collect.LinkedListMultimap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].values()"
    - "[com.google.common.collect.ForwardingMultimap].values()"
    - "[com.google.common.collect.LinkedHashMultimap].values()"
    - "[com.google.common.collect.ImmutableMultimap].values()"
    - "[com.google.common.collect.ArrayListMultimap].values()"
    - "[com.google.common.collect.AbstractSortedSetMultimap].values()"
    - "[com.google.common.collect.AbstractMultimap].values()"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].values()"
    - "[com.google.common.collect.HashMultimap].values()"
    - "[com.google.common.collect.AbstractMapBasedMultimap].values()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - "[java.util.Collection].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimap].values()"
    functionUses: 3
    ICount: 38
    EdgeCount: 337
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:221"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:219"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:218"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "currentThread()"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:223"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:233"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:225"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:224"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:234"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:234"
        BranchSideFuncs:
        - "values()"
        - "contains(java.lang.Object)"
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:233"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:238"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:233"
        BranchSideFuncs:
        - "values()"
        - "contains(java.lang.Object)"
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:219,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:221,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:220,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:229,1"
      Dst: "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:229,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:238,1"
      Dst: "[com.google.common.collect.Multimap].values()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalStateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].detectPotentialLocksCycle()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 276
    functionDepth: 1
    returnType: "com.google.common.collect.ListMultimap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[com.google.common.collect.ImmutableListMultimap].of()"
    - "[com.google.common.collect.MultimapBuilder$MultimapBuilderWithKeys].arrayListValues()"
    - "[com.google.common.collect.MultimapBuilder$MultimapBuilderWithKeys$1].build()"
    - "[com.google.common.collect.MultimapBuilder$MultimapBuilderWithKeys$2].build()"
    - "[com.google.common.collect.MultimapBuilder].linkedHashKeys()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].addAllLockIdsAfter(java.lang.Thread,com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock,com.google.common.collect.ListMultimap)"
    - "[com.google.common.collect.MultimapBuilder$ListMultimapBuilder].build()"
    functionUses: 1
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:253"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:255"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:253"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:259"
        BranchSideFuncs:
        - "linkedHashKeys()"
        - "arrayListValues()"
        - "build()"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:275"
        BranchSideFuncs:
        - "addAllLockIdsAfter(java.lang.Thread,com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock,com.google.common.collect.ListMultimap)"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:274"
        BranchSideFuncs:
        - "of()"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:275"
        BranchSideFuncs:
        - "addAllLockIdsAfter(java.lang.Thread,com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock,com.google.common.collect.ListMultimap)"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:274"
        BranchSideFuncs:
        - "of()"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:269"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:252,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:256,1"
      Dst: "[com.google.common.collect.ImmutableListMultimap].of()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:260,1"
      Dst: "[com.google.common.collect.MultimapBuilder].linkedHashKeys()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:260,1"
      Dst: "[com.google.common.collect.MultimapBuilder$MultimapBuilderWithKeys].arrayListValues()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:260,1"
      Dst: "[com.google.common.collect.MultimapBuilder$ListMultimapBuilder].build()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:268,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].addAllLockIdsAfter(java.lang.Thread,com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock,com.google.common.collect.ListMultimap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].addAllLockIdsAfter(java.lang.Thread,com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock,com.google.common.collect.ListMultimap)"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 314
    functionDepth: 0
    returnType: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    argCount: 3
    argTypes:
    - "java.lang.Thread"
    - "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    - "com.google.common.collect.ListMultimap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.FilteredEntrySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$MapMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].get(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 373
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:290"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:304"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:303"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:291"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:293"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:294"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:302"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:294"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:302"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:308"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:312"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:308"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:287,1"
      Dst: "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:288,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:290,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:290,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:290,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:301,1"
      Dst: "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:304,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:306,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].unlock()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].checkState()"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantLock].unlock()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantReadLock].unlock()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$CycleDetectingReentrantWriteLock].unlock()"
    - "[java.util.concurrent.locks.ReentrantLock].unlock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].unlock()"
    - "[com.google.common.util.concurrent.ForwardingLock].unlock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].unlock()"
    - "[com.google.common.collect.Multimaps$MapMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.FilteredEntrySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$MapMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSortedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].get(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$WriteQueue].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Collections2$TransformedCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.RegularContiguousSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$PowerSet].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.EmptyContiguousSet].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArraySet].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.collect.Collections2$PermutationCollection].isEmpty()"
    - "[com.google.common.cache.LocalCache$Values].isEmpty()"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[java.util.concurrent.SynchronousQueue].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Maps$Values].isEmpty()"
    - "[com.google.common.cache.LocalCache$AccessQueue].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.AbstractSortedSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSortedSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$MapMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntrySetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSortedSetMultimap].removeAll(java.lang.Object)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    - "[com.google.common.collect.Multimap].remove(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[com.google.common.collect.Multimap].removeAll(java.lang.Object)"
    functionUses: 7
    ICount: 39
    EdgeCount: 147
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:192"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:189"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:188"
        BranchSideFuncs:
        - "currentThread()"
        - "checkState()"
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:194"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:192"
        BranchSideFuncs:
        - "unlock()"
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:191"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:203"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:213"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:209"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:189,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:191,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].checkState()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:192,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:199,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:207,1"
      Dst: "[com.google.common.collect.Multimap].remove(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:209,1"
      Dst: "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:209,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:211,1"
      Dst: "[com.google.common.collect.Multimap].removeAll(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 325
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Object].toString()"
    functionUses: 19
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:321"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:324"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:323"
        BranchSideFuncs:
        - "toString()"
        - "format(java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:322,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock:322,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$annotationType__51"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$annotationType__51:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$annotationType__51"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$annotationType__51:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$annotationType__51"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealElement:com.google.inject.internal.RealOptionalBinder$BaseAnnotation:com.google.inject.internal.UniqueAnnotations$1:com.google.inject.name.NamedImpl].annotationType()"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$annotationType__51:-1,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__75].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__75"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__75].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__75:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__75].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__75].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__75"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__75:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__75].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__75"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__75:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].<init>(com.google.inject.Key,java.lang.Iterable,java.util.List)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 37
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "java.lang.Iterable"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].bootstrap$()"
    - "[com.google.common.collect.Streams].stream(java.lang.Iterable)"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 2
    ICount: 20
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:26,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:23,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:21,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:33,1"
      Dst: "[com.google.common.collect.Streams].stream(java.lang.Iterable)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:33,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].bootstrap$()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:34,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:35,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:35,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:32,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].isMergeable(com.google.inject.spi.ErrorDetail<?>)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:40"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:40"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:39"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:41"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:41,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.Key].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 198
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 83
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.Key:189"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:192"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key:191"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Key:192"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:195"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key:194"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Key:196"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:195"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.Key:194"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Key:197"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Key:196,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.Key:197,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionUses: 63
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:135"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:134"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Branch String: "com.google.inject.TypeLiteral:135"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:134"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.TypeLiteral:135,1"
      Dst: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 262
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    - "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    - "[java.lang.reflect.TypeVariable].getName()"
    functionUses: 5
    ICount: 81
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:212"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:215"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:219"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:220"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:231"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:230"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:221"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:225"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:224"
        BranchSideFuncs:
        - "getOwnerType()"
        - "equal(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.MoreTypes:227"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:-1"
        BranchSideFuncs:
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.MoreTypes:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:228"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:-1"
        BranchSideFuncs:
        - "getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
      - BranchSide: "com.google.inject.internal.MoreTypes:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:229"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:231"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:240"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:239"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:232"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:236"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:235"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
        - "getGenericComponentType()"
    - Branch String: "com.google.inject.internal.MoreTypes:240"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:250"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:249"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:241"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:245"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:244"
        BranchSideFuncs:
        - "getUpperBounds()"
    - Branch String: "com.google.inject.internal.MoreTypes:247"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:245"
        BranchSideFuncs:
        - "getLowerBounds()"
        - "equals(java.lang.Object[],java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.MoreTypes:244"
        BranchSideFuncs:
        - "getUpperBounds()"
    - Branch String: "com.google.inject.internal.MoreTypes:248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:244"
        BranchSideFuncs:
        - "getUpperBounds()"
    - Branch String: "com.google.inject.internal.MoreTypes:250"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:261"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:260"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:251"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:254"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:253"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:256"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:254"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes:253"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:257"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:218,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:227,1"
      Dst: "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - Src: "com.google.inject.internal.MoreTypes:227,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:228,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.inject.internal.MoreTypes:229,1"
      Dst: "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - Src: "com.google.inject.internal.MoreTypes:229,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - Src: "com.google.inject.internal.MoreTypes:238,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.inject.internal.MoreTypes:238,1"
      Dst: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:247,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.inject.internal.MoreTypes:248,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.inject.internal.MoreTypes:256,1"
      Dst: "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    - Src: "com.google.inject.internal.MoreTypes:257,1"
      Dst: "[java.lang.reflect.TypeVariable].getName()"
    - Src: "com.google.inject.internal.MoreTypes:257,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 34
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 75
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.Iterators$3:com.google.common.collect.Sets$SubSet$1:java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.base.Absent:com.google.common.base.Predicates$InstanceOfPredicate:com.google.common.base.Predicates$SubtypeOfPredicate:com.google.common.cache.CacheStats:com.google.common.collect.Count:com.google.common.collect.ImmutableEnumSet:com.google.common.hash.Murmur3_128HashFunction:com.google.common.hash.Murmur3_32HashFunction:com.google.common.hash.SipHashFunction:com.google.common.primitives.UnsignedInteger:com.google.common.primitives.UnsignedLong:com.google.common.reflect.TypeParameter:com.google.inject.matcher.Matchers$IdenticalTo:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.security.auth.Subject:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].bootstrap$(java.util.List)"
    - "[com.google.common.collect.RegularImmutableAsList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].bootstrap$()"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[java.util.ArrayList].size()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 58
    EdgeCount: 307
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:56"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "valueOf(int)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:55"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "isEmpty()"
        - "bootstrap$()"
        - "getSources()"
        - "bootstrap$(java.util.List)"
        - "toList()"
        - "<init>()"
        - "forEach(java.util.function.Consumer)"
        - "bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
        - "stream()"
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:50"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:53"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:52"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "format()"
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:74"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "bold(java.lang.String)"
        - "size()"
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:73"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:46,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:46,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:48,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:48,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:48,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:49,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:50,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:53,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:53,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:56,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:57,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:57,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:58,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].bootstrap$(java.util.List)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:58,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:61,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:61,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:62,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:62,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].bootstrap$()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:63,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:64,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:64,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:65,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:67,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:68,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:68,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:302,1"
      Dst: "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 297
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "com.google.inject.internal.Messages$FormatOptions[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags].enableColorizeErrorMessages()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].bootstrap$()"
    - "[java.util.stream.Collectors].joining()"
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 4
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:291"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:294"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:293"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.Messages:291,1"
      Dst: "[com.google.inject.internal.InternalFlags].enableColorizeErrorMessages()"
    - Src: "com.google.inject.internal.Messages:296,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "com.google.inject.internal.Messages:296,1"
      Dst: "[com.google.inject.internal.Messages$lambda_formatText_0__3].bootstrap$()"
    - Src: "com.google.inject.internal.Messages:296,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.Messages:296,1"
      Dst: "[java.util.stream.Collectors].joining()"
    - Src: "com.google.inject.internal.Messages:296,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.Messages:294,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].enableColorizeErrorMessages()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags$ColorizeOption$1].enabled()"
    - "[com.google.inject.internal.InternalFlags$ColorizeOption$2].enabled()"
    - "[com.google.inject.internal.InternalFlags$ColorizeOption$3].enabled()"
    - "[com.google.inject.internal.InternalFlags$ColorizeOption].enabled()"
    functionUses: 1
    ICount: 3
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags:161,1"
      Dst: "[com.google.inject.internal.InternalFlags$ColorizeOption].enabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$lambda_formatText_0__3].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.Messages$lambda_formatText_0__3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$lambda_formatText_0__3:-1,1"
      Dst: "[com.google.inject.internal.Messages$lambda_formatText_0__3].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$lambda_formatText_0__3].<init>()"
    functionSourceFile: "com.google.inject.internal.Messages$lambda_formatText_0__3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$lambda_formatText_0__3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Formatter"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - "[com.google.inject.internal.SourceFormatter].getModuleStack(com.google.inject.spi.ElementSource)"
    functionUses: 9
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:32"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:37"
        BranchSideFuncs:
        - "getDeclaringSource()"
        - "getModuleStack(com.google.inject.spi.ElementSource)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.SourceFormatter:34,1"
      Dst: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - Src: "com.google.inject.internal.SourceFormatter:35,1"
      Dst: "[com.google.inject.internal.SourceFormatter].getModuleStack(com.google.inject.spi.ElementSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SourceFormatter].format()"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[com.google.inject.internal.SourceFormatter].formatDependency(com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.SourceFormatter].formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.util.StackTraceElements].forType(java.lang.Class)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    - "[com.google.inject.internal.SourceFormatter].formatMember(java.lang.reflect.Member)"
    - "[com.google.inject.internal.SourceFormatter].formatKey(com.google.inject.Key)"
    functionUses: 9
    ICount: 88
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:45"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.SourceFormatter:44"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "com.google.inject.internal.SourceFormatter:46"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:48"
        BranchSideFuncs:
        - "formatDependency(com.google.inject.spi.Dependency)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:47"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:50"
        BranchSideFuncs:
        - "formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:49"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:50"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:52"
        BranchSideFuncs:
        - "forType(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:51"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:54"
        BranchSideFuncs:
        - "formatMember(java.lang.reflect.Member)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:53"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:56"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:55"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:56"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:58"
        BranchSideFuncs:
        - "formatKey(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:57"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:58"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:62"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:61"
        BranchSideFuncs:
        - "preposition(java.lang.String)"
    - Branch String: "com.google.inject.internal.SourceFormatter:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:68"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.SourceFormatter:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:45,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "com.google.inject.internal.SourceFormatter:47,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatDependency(com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.internal.SourceFormatter:49,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.SourceFormatter:51,1"
      Dst: "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:51,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].forType(java.lang.Class)"
    - Src: "com.google.inject.internal.SourceFormatter:51,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.SourceFormatter:53,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatMember(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.SourceFormatter:57,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatKey(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 21
    CyclomaticComplexity: 10
  - functionName: "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:71"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:74"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:73"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SourceFormatter].formatMember(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.StackTraceElements].forMember(java.lang.reflect.Member)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:91,1"
      Dst: "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:91,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].forMember(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.SourceFormatter:91,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements].forMember(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.inject.internal.util.LineNumbers].getSource()"
    - "[com.google.inject.internal.util.LineNumbers].getLineNumber(java.lang.reflect.Member)"
    - "[com.google.inject.internal.util.LineNumbers].getFirstLine()"
    - "[java.lang.Integer].intValue()"
    - "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - "[com.google.common.reflect.Invokable].getName()"
    - "[java.lang.invoke.MemberName:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method].getName()"
    - "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    - "[java.lang.reflect.Member].getName()"
    functionUses: 3
    ICount: 24
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:66"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:65"
        BranchSideFuncs:
        - "getSource()"
        - "intValue()"
        - "getUnchecked(java.lang.Object)"
        - "getDeclaringClass()"
        - "getLineNumber(java.lang.reflect.Member)"
        - "getFirstLine()"
    - Branch String: "com.google.inject.internal.util.StackTraceElements:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:66"
        BranchSideFuncs:
        - "intValue()"
        - "getFirstLine()"
        - "memberType(java.lang.reflect.Member)"
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:65"
        BranchSideFuncs:
        - "getSource()"
        - "intValue()"
        - "getUnchecked(java.lang.Object)"
        - "getDeclaringClass()"
        - "getLineNumber(java.lang.reflect.Member)"
        - "getFirstLine()"
    - Branch String: "com.google.inject.internal.util.StackTraceElements:72"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:70"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String,java.lang.String,java.lang.String,int)"
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:69"
        BranchSideFuncs:
        - "intValue()"
        - "getFirstLine()"
        - "memberType(java.lang.reflect.Member)"
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:66,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.util.StackTraceElements:67,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    - Src: "com.google.inject.internal.util.StackTraceElements:68,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].getSource()"
    - Src: "com.google.inject.internal.util.StackTraceElements:69,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].getLineNumber(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.util.StackTraceElements:70,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].getFirstLine()"
    - Src: "com.google.inject.internal.util.StackTraceElements:70,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "com.google.inject.internal.util.StackTraceElements:71,1"
      Dst: "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.util.StackTraceElements:72,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:73,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:73,1"
      Dst: "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.util.LineNumbers].getSource()"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers].getLineNumber(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].getDeclaringClass()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.inject.internal.util.LineNumbers].memberKey(java.lang.reflect.Member)"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers:118"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:120"
        BranchSideFuncs:
        - "getDeclaringClass()"
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers:118,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.util.LineNumbers:117,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.util.LineNumbers:123,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].memberKey(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.util.LineNumbers:123,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.LineNumbers].memberKey(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Constructor].getName()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.invoke.MemberName].getName()"
    - "[com.google.common.reflect.Invokable].getName()"
    - "[java.lang.reflect.Field].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[org.objectweb.asm.Type].getDescriptor(java.lang.Class)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Member].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 37
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:135"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.LineNumbers:134"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers:135"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:138"
        BranchSideFuncs:
        - "getName()"
        - "getMethodDescriptor(java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.internal.util.LineNumbers:137"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers:138"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:145"
        BranchSideFuncs:
        - "<init>()"
        - "getParameterTypes()"
      - BranchSide: "com.google.inject.internal.util.LineNumbers:144"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "getClass()"
    - Branch String: "com.google.inject.internal.util.LineNumbers:140"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:142"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers:132,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.util.LineNumbers:134,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "com.google.inject.internal.util.LineNumbers:136,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.util.LineNumbers:136,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.util.LineNumbers:139,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.util.LineNumbers:139,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.util.LineNumbers:140,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "com.google.inject.internal.util.LineNumbers:141,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor(java.lang.Class)"
    - Src: "com.google.inject.internal.util.LineNumbers:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.util.LineNumbers:146,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.util.LineNumbers:146,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "com.google.inject.internal.util.LineNumbers:146,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.LineNumbers].getFirstLine()"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.util.Classes"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.Class<? extends Member>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 3
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.Classes:61"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:64"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.Classes:63"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.Classes:64"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:67"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.Classes:66"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.Classes:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:71"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.Classes:70"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "getClass()"
    Callsites:
    - Src: "com.google.inject.internal.util.Classes:59,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.util.Classes:72,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.util.Classes:72,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "com.google.inject.internal.util.Classes:72,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].bootstrap$(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].<init>(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ChildBindingAlreadySetError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ChildBindingAlreadySetError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].<init>()"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 7
    returnType: "com.google.inject.internal.ChildBindingAlreadySetError"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].<init>(com.google.inject.Key,java.lang.Iterable,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:78,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].<init>(com.google.inject.Key,java.lang.Iterable,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].<init>()"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].trimSource(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 2
    returnType: "java.util.List<Object>"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].bootstrap$(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ChildBindingAlreadySetError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].<init>(com.google.inject.internal.ChildBindingAlreadySetError)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ChildBindingAlreadySetError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$trimSource$3(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[com.google.common.base.Absent:com.google.common.base.Predicates$InstanceOfPredicate:com.google.common.base.Predicates$SubtypeOfPredicate:com.google.common.cache.CacheStats:com.google.common.collect.Count:com.google.common.collect.ImmutableEnumSet:com.google.common.hash.Murmur3_128HashFunction:com.google.common.hash.Murmur3_32HashFunction:com.google.common.hash.SipHashFunction:com.google.common.primitives.UnsignedInteger:com.google.common.primitives.UnsignedLong:com.google.common.reflect.TypeParameter:com.google.inject.matcher.Matchers$IdenticalTo:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.security.auth.Subject:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 237
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:82"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:83,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$2(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Shorts$ShortArrayAsList:java.util.AbstractCollection:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 7
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:62"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:63,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$1(java.util.List,com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:58,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$new$0(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ChildBindingAlreadySetError:34"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ChildBindingAlreadySetError:33"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProcessedBindingData].<init>()"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.Lists].newArrayList()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProcessedBindingData:30,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProcessedBindingData].addUninitializedBinding(java.lang.Runnable)"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:39,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProcessedBindingData].addDelayedUninitializedBinding(java.lang.Runnable)"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProcessedBindingData].initializeBindings()"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.util.concurrent.InterruptibleTask].run()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].run()"
    - "[com.google.common.collect.MapMakerInternalMap$CleanupMapTask].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[com.google.common.util.concurrent.AbstractFuture$SetFuture].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$1].run()"
    - "[com.google.common.util.concurrent.ListenerCallQueue$PerListenerQueue].run()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].run()"
    - "[com.google.common.util.concurrent.Futures$NonCancellationPropagatingFuture].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate$Task].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[com.google.common.util.concurrent.AbstractTransformFuture].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[com.google.common.util.concurrent.ClosingFuture$10].run()"
    - "[com.google.common.util.concurrent.ClosingFuture$9].run()"
    - "[com.google.common.util.concurrent.TrustedListenableFutureTask].run()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$TaskNonReentrantExecutor].run()"
    - "[com.google.common.util.concurrent.TimeoutFuture$Fire].run()"
    - "[com.google.common.util.concurrent.AbstractCatchingFuture].run()"
    - "[com.google.common.base.internal.Finalizer].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$Application$1].run()"
    - "[java.lang.Thread].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask].run()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker:com.google.common.util.concurrent.InterruptibleTask$DoNothingRunnable:com.google.common.util.concurrent.Runnables$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.FutureTask:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 10
    EdgeCount: 151
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProcessedBindingData:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:51"
        BranchSideFuncs:
        - "run()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:48,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProcessedBindingData:48,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProcessedBindingData:48,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProcessedBindingData:49,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProcessedBindingData].runCreationListeners(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.BoundProviderFactory].notify(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.FactoryProxy].notify(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ExposedKeyFactory].notify(com.google.inject.internal.Errors)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.internal.CreationListener].notify(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 11
    EdgeCount: 127
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProcessedBindingData:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:62"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "notify(com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:59,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProcessedBindingData:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProcessedBindingData:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProcessedBindingData:60,1"
      Dst: "[com.google.inject.internal.CreationListener].notify(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProcessedBindingData].initializeDelayedBindings()"
    functionSourceFile: "com.google.inject.internal.ProcessedBindingData"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.util.concurrent.InterruptibleTask].run()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].run()"
    - "[com.google.common.collect.MapMakerInternalMap$CleanupMapTask].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[com.google.common.util.concurrent.AbstractFuture$SetFuture].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$1].run()"
    - "[com.google.common.util.concurrent.ListenerCallQueue$PerListenerQueue].run()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].run()"
    - "[com.google.common.util.concurrent.Futures$NonCancellationPropagatingFuture].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate$Task].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[com.google.common.util.concurrent.AbstractTransformFuture].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[com.google.common.util.concurrent.ClosingFuture$10].run()"
    - "[com.google.common.util.concurrent.ClosingFuture$9].run()"
    - "[com.google.common.util.concurrent.TrustedListenableFutureTask].run()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$TaskNonReentrantExecutor].run()"
    - "[com.google.common.util.concurrent.TimeoutFuture$Fire].run()"
    - "[com.google.common.util.concurrent.AbstractCatchingFuture].run()"
    - "[com.google.common.base.internal.Finalizer].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$Application$1].run()"
    - "[java.lang.Thread].run()"
    - "[com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask].run()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker:com.google.common.util.concurrent.InterruptibleTask$DoNothingRunnable:com.google.common.util.concurrent.Runnables$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.FutureTask:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 10
    EdgeCount: 151
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProcessedBindingData:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:73"
        BranchSideFuncs:
        - "run()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.ProcessedBindingData:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProcessedBindingData:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProcessedBindingData:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProcessedBindingData:70,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProcessedBindingData:71,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.String,java.lang.Class[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:55,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:55,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.String,java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:68"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:65,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:67,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:67,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:69,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.String,java.lang.Class[])"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:60,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:60,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:60,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].canEnhance(java.lang.reflect.Executable)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Executable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].canAccess(java.lang.reflect.Executable,boolean)"
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:74,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:74,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].canAccess(java.lang.reflect.Executable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].canAccess(java.lang.reflect.Executable,boolean)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 303
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Executable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Executable].getModifiers()"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:302"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:298"
        BranchSideFuncs:
        - "getModifiers()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:302"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:302"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:299,1"
      Dst: "[java.lang.reflect.Executable].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].buildEnhancerBuilder(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "com.google.inject.internal.BytecodeGen$EnhancerBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].bootstrap$(java.util.Map)"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMethodHierarchy(java.lang.Class,java.util.function.Consumer)"
    - "[java.util.TreeMap].<init>()"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].bootstrap$(java.util.Map)"
    - "[com.google.inject.internal.aop.MethodPartition].collectEnhanceableMethods(com.google.inject.TypeLiteral,java.util.function.Consumer,java.util.Map)"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl].<init>(java.lang.Class,java.util.Collection,java.util.Map)"
    - "[java.util.TreeMap].values()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 32
    EdgeCount: 248
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:94"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:110"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:109"
        BranchSideFuncs:
        - "values()"
        - "<init>(java.lang.Class,java.util.Collection,java.util.Map)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:95"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:101"
        BranchSideFuncs:
        - "bootstrap$(java.util.Map)"
        - "collectEnhanceableMethods(com.google.inject.TypeLiteral,java.util.function.Consumer,java.util.Map)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:98"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:101"
        BranchSideFuncs:
        - "signature(java.lang.reflect.Method)"
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:79,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:81,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].bootstrap$(java.util.Map)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:81,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMethodHierarchy(java.lang.Class,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:90,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:93,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:94,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:94,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:94,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:94,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:98,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:99,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:99,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:102,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].bootstrap$(java.util.Map)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:103,1"
      Dst: "[com.google.inject.internal.aop.MethodPartition].collectEnhanceableMethods(com.google.inject.TypeLiteral,java.util.function.Consumer,java.util.Map)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:110,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl].<init>(java.lang.Class,java.util.Collection,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].bootstrap$(java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].<init>(java.util.Map)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].<init>(java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].bootstrap$(java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].<init>(java.util.Map)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].<init>(java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl].<init>(java.lang.Class,java.util.Collection,java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.util.Collection"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$ValuesView].toArray(java.lang.Object[])"
    - "[com.google.common.cache.LocalCache$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Collections2$FilteredCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1KeySetImpl].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset].toArray(java.lang.Object[])"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1ValuesImpl].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ForwardingCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Sets$DescendingSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$SafeToArraySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset$EntrySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$KeySetView].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredMapValues].toArray(java.lang.Object[])"
    - "[com.google.common.collect.DescendingMultiset].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection:java.util.ArrayDeque:java.util.ArrayList:java.util.LinkedList:java.util.PriorityQueue:java.util.Vector:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.SynchronousQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 29
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:65,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:68,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:69,1"
      Dst: "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].partitionMethod(java.lang.reflect.Method,java.util.Map<String,Object>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.util.Map<String,Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method:java.security.Provider:java.util.HashMap:java.util.Hashtable:java.util.Map:java.util.Properties:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentMap].getParameterCount()"
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].bootstrap$()"
    - "[com.google.common.cache.LocalCache].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    - "[com.google.common.collect.ImmutableMap].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    - "[java.lang.reflect.Method].getParameterCount()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    - "[java.util.Map].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    functionUses: 1
    ICount: 8
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:119,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:119,1"
      Dst: "[java.lang.reflect.Method].getParameterCount()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:119,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:120,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].bootstrap$()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:120,1"
      Dst: "[java.util.Map].merge(java.lang.Object,java.lang.Object,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.BiFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].mergeMethods(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.MethodPartition].<init>(java.lang.reflect.Method,java.lang.reflect.Method)"
    - "[com.google.inject.internal.aop.MethodPartition].addCandidate(java.lang.reflect.Method)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:126"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:129"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Method,java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:128"
        BranchSideFuncs:
        - "addCandidate(java.lang.reflect.Method)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:127,1"
      Dst: "[com.google.inject.internal.aop.MethodPartition].<init>(java.lang.reflect.Method,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:129,1"
      Dst: "[com.google.inject.internal.aop.MethodPartition].addCandidate(java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.MethodPartition].<init>(java.lang.reflect.Method,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.MethodPartition"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.MethodPartition:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.aop.MethodPartition:39,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.aop.MethodPartition:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.MethodPartition].addCandidate(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.MethodPartition"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.MethodPartition"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.MethodPartition:49,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].visitMethodHierarchy(java.lang.Class<?>,java.util.function.Consumer<Method>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 175
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.util.function.Consumer<Method>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    - "[java.lang.Class].getName()"
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - "[com.google.inject.internal.aop.ClassBuilding].packageName(java.lang.String)"
    - "[java.lang.Class].getSuperclass()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - "[java.lang.Class].getInterfaces()"
    - "[com.google.inject.internal.aop.ClassBuilding].pushInterfaces(java.util.Deque,java.lang.Class[])"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEachEntry_0__66].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_forEach_0__48].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$2$1].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].accept(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$lambda_forEach_0__42].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEach_1__47].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].accept(java.lang.Object)"
    - "[com.google.common.collect.Streams$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_forEach_0__46].accept(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes$lambda_toString_1__14].accept(java.lang.Object)"
    - "[com.google.common.collect.CollectSpliterators$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$3$1].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].accept(java.lang.Object)"
    - "[java.util.stream.Collectors$1OptionalBox].accept(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.ArrayDeque].pop()"
    - "[com.google.inject.internal.aop.ClassBuilding].mergeInterface(java.util.List,java.lang.Class)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 62
    EdgeCount: 171
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:143"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:140"
        BranchSideFuncs:
        - "hasPackageAccess()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:139"
        BranchSideFuncs:
        - "hasPackageAccess()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:146"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:155"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:146"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:155"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:149"
        BranchSideFuncs:
        - "packageName(java.lang.String)"
        - "getName()"
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:149"
        BranchSideFuncs:
        - "packageName(java.lang.String)"
        - "getName()"
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:156"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:160"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:171"
        BranchSideFuncs:
        - "pop()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:170"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:163"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:163"
        BranchSideFuncs:
        - "pop()"
        - "mergeInterface(java.util.List,java.lang.Class)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:162"
        BranchSideFuncs:
        - "pop()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:164"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:163"
        BranchSideFuncs:
        - "pushInterfaces(java.util.Deque,java.lang.Class[])"
        - "getInterfaces()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:162"
        BranchSideFuncs:
        - "pop()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:171"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:174"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
        - "iterator()"
        - "getDeclaredMethods()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:140,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:143,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:143,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:143,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].packageName(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:150,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:152,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:152,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:153,1"
      Dst: "[java.lang.Class].getInterfaces()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:153,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].pushInterfaces(java.util.Deque,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.ClassBuilding:147,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:157,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:161,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:162,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:163,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:164,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].mergeInterface(java.util.List,java.lang.Class)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:171,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:171,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:171,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 26
    CyclomaticComplexity: 11
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].packageName(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:203,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:203,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 296
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Executable[]"
    - "boolean"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].canAccess(java.lang.reflect.Executable,boolean)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEachEntry_0__66].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_forEach_0__48].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$2$1].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].accept(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$lambda_forEach_0__42].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEach_1__47].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].accept(java.lang.Object)"
    - "[com.google.common.collect.Streams$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_forEach_0__46].accept(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes$lambda_toString_1__14].accept(java.lang.Object)"
    - "[com.google.common.collect.CollectSpliterators$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$3$1].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].accept(java.lang.Object)"
    - "[java.util.stream.Collectors$1OptionalBox].accept(java.lang.Object)"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:290"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:295"
        BranchSideFuncs:
        - "canAccess(java.lang.reflect.Executable,boolean)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:294"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:291"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:290"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:291,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].canAccess(java.lang.reflect.Executable,boolean)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:292,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].pushInterfaces(java.util.Deque,java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Deque"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Synchronized$SynchronizedDeque].push(java.lang.Object)"
    - "[java.util.LinkedList].push(java.lang.Object)"
    - "[com.google.common.collect.ForwardingDeque].push(java.lang.Object)"
    - "[java.util.ArrayDeque].push(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].push(java.lang.Object)"
    - "[java.util.Deque].push(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:178"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:181"
        BranchSideFuncs:
        - "push(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:179,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].mergeInterface(java.util.List<Class<?>>,java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.List<Class<?>>"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.common.collect.ForwardingList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Lists$ReverseList].add(int,java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(int,java.lang.Object)"
    - "[java.util.AbstractSequentialList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].add(int,java.lang.Object)"
    - "[java.util.Vector].add(int,java.lang.Object)"
    - "[java.util.AbstractList].add(int,java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].add(int,java.lang.Object)"
    - "[java.util.LinkedList].add(int,java.lang.Object)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].add(int,java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].add(int,java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(int,java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(int,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 120
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:186"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:198"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:197"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:188"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:190"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:191"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:185"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:186,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:187,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:191,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:193,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].getOverridableObjectMethods()"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 222
    functionDepth: 2
    returnType: "java.lang.reflect.Method[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].bootstrap$(java.util.List)"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:208,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:211,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:211,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].bootstrap$(java.util.List)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:210,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:221,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].bootstrap$(java.util.List)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].<init>(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].canFastInvoke(java.lang.reflect.Executable)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Executable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[com.google.inject.internal.aop.ClassBuilding].isPublic(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.reflect.Executable].getModifiers()"
    - "[java.lang.reflect.Executable].getDeclaringClass()"
    - "[java.lang.reflect.Executable].getParameterTypes()"
    functionUses: 2
    ICount: 32
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:227"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:231"
        BranchSideFuncs:
        - "getDeclaringClass()"
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:229"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:228"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:232"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-1"
        BranchSideFuncs:
        - "getDeclaringClass()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:232"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-1"
        BranchSideFuncs:
        - "getDeclaringClass()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:233"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:240"
        BranchSideFuncs:
        - "getParameterTypes()"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:239"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:234"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:240"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "isPublic(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:239"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:235"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:234"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:233"
        BranchSideFuncs:
        - "getParameterTypes()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:226,1"
      Dst: "[java.lang.reflect.Executable].getModifiers()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:227,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:232,1"
      Dst: "[java.lang.reflect.Executable].getDeclaringClass()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:232,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].isPublic(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:234,1"
      Dst: "[java.lang.reflect.Executable].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].isPublic(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:244"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:243"
        BranchSideFuncs:
        - "getModifiers()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:244,1"
      Dst: "[java.lang.Class].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].buildFastClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildFastClass_3__209].bootstrap$(java.util.NavigableMap)"
    - "[com.google.inject.internal.aop.ClassBuilding].visitFastConstructors(java.lang.Class,java.util.function.Consumer)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildFastClass_4__210].bootstrap$(java.util.NavigableMap)"
    - "[com.google.inject.internal.aop.ClassBuilding].visitFastMethods(java.lang.Class,java.util.function.Consumer)"
    - "[com.google.inject.internal.aop.FastClass].<init>(java.lang.Class)"
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].glue(java.util.NavigableMap)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:250,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:252,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildFastClass_3__209].bootstrap$(java.util.NavigableMap)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:252,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitFastConstructors(java.lang.Class,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:253,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildFastClass_4__210].bootstrap$(java.util.NavigableMap)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:253,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitFastMethods(java.lang.Class,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:255,1"
      Dst: "[com.google.inject.internal.aop.FastClass].<init>(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:255,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].glue(java.util.NavigableMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.FastClass].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].<init>(java.lang.Class,java.lang.String)"
    - "[java.lang.Class].isInterface()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:120,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].<init>(java.lang.Class,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:121,1"
      Dst: "[java.lang.Class].isInterface()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].visitFastConstructors(java.lang.Class<?>,java.util.function.Consumer<Constructor<?>>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.util.function.Consumer<Constructor<?>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - "[java.lang.Class].getConstructors()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:260"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:264"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:265"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:260,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:262,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:262,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:265,1"
      Dst: "[java.lang.Class].getConstructors()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:266,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].visitFastMethods(java.lang.Class<?>,java.util.function.Consumer<Method>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.util.function.Consumer<Method>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - "[java.lang.Class].getMethods()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:273"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:277"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:278"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:285"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:284"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:280"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:278"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:273,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:275,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:275,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:278,1"
      Dst: "[java.lang.Class].getMethods()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:280,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:281,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildFastClass$4(java.util.NavigableMap,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.NavigableMap"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:253,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:253,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildFastClass$3(java.util.NavigableMap,java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.NavigableMap"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:252,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:252,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].lambda$getOverridableObjectMethods$2(java.util.List,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getName()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:215"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:219"
        BranchSideFuncs:
        - "getName()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:218"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:219"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:215,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:216,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:216,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:217,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$1(java.util.Map,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:105,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.ClassBuilding:105,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$0(java.util.Map,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[com.google.inject.internal.aop.ClassBuilding].partitionMethod(java.lang.reflect.Method,java.util.Map)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassBuilding:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:88"
        BranchSideFuncs:
        - "partitionMethod(java.lang.reflect.Method,java.util.Map)"
      - BranchSide: "com.google.inject.internal.aop.ClassBuilding:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding:85,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.ClassBuilding:86,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].partitionMethod(java.lang.reflect.Method,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Scopes].<init>()"
    functionSourceFile: "com.google.inject.Scopes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes].isSingleton(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.Scopes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - "[java.lang.Boolean].booleanValue()"
    - "[com.google.inject.Scopes].getInjector(com.google.inject.spi.LinkedKeyBinding)"
    - "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    - "[com.google.inject.spi.ExposedBinding].getPrivateElements()"
    - "[com.google.inject.spi.PrivateElements].getInjector()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes:97"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:101"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:100"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:101"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:101"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:100"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:104"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:108"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:107"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:101"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:117"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:116"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:111"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:117"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Scopes:96,1"
      Dst: "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - Src: "com.google.inject.Scopes:96,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "com.google.inject.Scopes:103,1"
      Dst: "[com.google.inject.Scopes].getInjector(com.google.inject.spi.LinkedKeyBinding)"
    - Src: "com.google.inject.Scopes:105,1"
      Dst: "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - Src: "com.google.inject.Scopes:105,1"
      Dst: "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    - Src: "com.google.inject.Scopes:110,1"
      Dst: "[com.google.inject.spi.ExposedBinding].getPrivateElements()"
    - Src: "com.google.inject.Scopes:110,1"
      Dst: "[com.google.inject.spi.PrivateElements].getInjector()"
    - Src: "com.google.inject.Scopes:112,1"
      Dst: "[com.google.inject.Binding].getKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.Scopes].isScoped(com.google.inject.Binding<?>,com.google.inject.Scope,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Scopes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "com.google.inject.Binding<?>"
    - "com.google.inject.Scope"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$3].<init>(java.lang.Class,com.google.inject.Scope)"
    - "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - "[java.lang.Boolean].booleanValue()"
    - "[com.google.inject.Scopes].getInjector(com.google.inject.spi.LinkedKeyBinding)"
    - "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    - "[com.google.inject.spi.ExposedBinding].getPrivateElements()"
    - "[com.google.inject.spi.PrivateElements].getInjector()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes:159"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:163"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:162"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:163"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:163"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:162"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:166"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:170"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:169"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:163"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:179"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:178"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.Scopes:173"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:179"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Scopes:135,1"
      Dst: "[com.google.inject.Scopes$3].<init>(java.lang.Class,com.google.inject.Scope)"
    - Src: "com.google.inject.Scopes:136,1"
      Dst: "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - Src: "com.google.inject.Scopes:136,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "com.google.inject.Scopes:165,1"
      Dst: "[com.google.inject.Scopes].getInjector(com.google.inject.spi.LinkedKeyBinding)"
    - Src: "com.google.inject.Scopes:167,1"
      Dst: "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - Src: "com.google.inject.Scopes:167,1"
      Dst: "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    - Src: "com.google.inject.Scopes:172,1"
      Dst: "[com.google.inject.spi.ExposedBinding].getPrivateElements()"
    - Src: "com.google.inject.Scopes:172,1"
      Dst: "[com.google.inject.spi.PrivateElements].getInjector()"
    - Src: "com.google.inject.Scopes:174,1"
      Dst: "[com.google.inject.Binding].getKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.Scopes$3].<init>(java.lang.Class,com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.Scopes$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$3:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes].getInjector(com.google.inject.spi.LinkedKeyBinding<?>)"
    functionSourceFile: "com.google.inject.Scopes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.LinkedKeyBinding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getInjector()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes:184"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes:187"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Scopes:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Scopes:185,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInjector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes].isCircularProxy(java.lang.Object)"
    functionSourceFile: "com.google.inject.Scopes"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BytecodeGen].isCircularProxy(java.lang.Object)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes:200,1"
      Dst: "[com.google.inject.internal.BytecodeGen].isCircularProxy(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].isCircularProxy(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BytecodeGen:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BytecodeGen:58"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "getClass()"
    - Branch String: "com.google.inject.internal.BytecodeGen:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BytecodeGen:58"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "getClass()"
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:59,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.BytecodeGen:59,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.DeferredLookups].<init>(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.DeferredLookups"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeferredLookups:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.DeferredLookups:37,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeferredLookups].initialize(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.DeferredLookups"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LookupProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.AbstractProcessor].process(com.google.inject.internal.InjectorImpl,java.util.List)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeferredLookups:46,1"
      Dst: "[com.google.inject.internal.LookupProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.DeferredLookups:46,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].process(com.google.inject.internal.InjectorImpl,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LookupProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.LookupProcessor"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LookupProcessor:33,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeferredLookups].getProvider(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.DeferredLookups"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.Key)"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].getProvider()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeferredLookups:51,1"
      Dst: "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.Key)"
    - Src: "com.google.inject.internal.DeferredLookups:52,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.DeferredLookups:53,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.spi.Dependency)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:49,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:49,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.spi.ProviderLookup:49,1"
      Dst: "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.spi.Dependency)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ProviderLookup:54,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].getProvider()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "com.google.inject.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup$1].<init>(com.google.inject.spi.ProviderLookup)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:106,1"
      Dst: "[com.google.inject.spi.ProviderLookup$1].<init>(com.google.inject.spi.ProviderLookup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup$1].<init>(com.google.inject.spi.ProviderLookup)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup$1"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderLookup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup$1:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeferredLookups].getMembersInjector(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.DeferredLookups"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.MembersInjector<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.MembersInjectorLookup].<init>(java.lang.Object,com.google.inject.TypeLiteral)"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].getMembersInjector()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeferredLookups:58,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].<init>(java.lang.Object,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.DeferredLookups:59,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.DeferredLookups:60,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].getMembersInjector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].<init>(java.lang.Object,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.MembersInjectorLookup:47,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].getMembersInjector()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "com.google.inject.MembersInjector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.MembersInjectorLookup$1].<init>(com.google.inject.spi.MembersInjectorLookup)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:112,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup$1].<init>(com.google.inject.spi.MembersInjectorLookup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup$1].<init>(com.google.inject.spi.MembersInjectorLookup)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup$1"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.MembersInjectorLookup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup$1:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].<init>(int)"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations$1:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].value()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].memberValueString(java.lang.String,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 22
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations$1:57,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.UniqueAnnotations$1:57,1"
      Dst: "[com.google.inject.internal.Annotations].memberValueString(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.UniqueAnnotations$1:57,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].memberValueString(java.lang.String,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 260
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:251"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:254"
        BranchSideFuncs:
        - "append(java.lang.String)"
      - BranchSide: "com.google.inject.internal.Annotations:253"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:254"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:257"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "com.google.inject.internal.Annotations:256"
        BranchSideFuncs:
        - "append(java.lang.Object)"
    - Branch String: "com.google.inject.internal.Annotations:254"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:257"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "com.google.inject.internal.Annotations:256"
        BranchSideFuncs:
        - "append(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:248,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.Annotations:252,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.Annotations:252,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.Annotations:255,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:259,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].value()"
    - "[com.google.inject.internal.UniqueAnnotations$Internal].value()"
    functionUses: 60
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.UniqueAnnotations$1:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UniqueAnnotations$1:61"
        BranchSideFuncs:
        - "value()"
    - Branch String: "com.google.inject.internal.UniqueAnnotations$1:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UniqueAnnotations$1:61"
        BranchSideFuncs:
        - "value()"
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations$1:62,1"
      Dst: "[com.google.inject.internal.UniqueAnnotations$Internal].value()"
    - Src: "com.google.inject.internal.UniqueAnnotations$1:62,1"
      Dst: "[com.google.inject.internal.UniqueAnnotations$1].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.UniqueAnnotations$1].hashCode()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 36
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations$1:67,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$1].<init>()"
    functionSourceFile: "com.google.inject.internal.Scoping$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$1:44,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$1].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer].visitNoScoping()"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitNoScoping()"
    - "[com.google.inject.Scopes$3].visitNoScoping()"
    - "[com.google.inject.Scopes$2].visitNoScoping()"
    - "[com.google.inject.spi.BindingScopingVisitor].visitNoScoping()"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$1:47,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitNoScoping()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$1].getScopeInstance()"
    functionSourceFile: "com.google.inject.internal.Scoping$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$1].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$1"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$1:com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.inject.Scope].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$1:57,1"
      Dst: "[com.google.inject.Scope].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$1].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].singletonTrie(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.util.Arrays].binarySearch(char[],int,int,char)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:122"
      Branch Sides: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:null"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:134"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:139"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:138"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:139"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:147"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:146"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:140"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:143"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:142"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:116,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:126,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:126,1"
      Dst: "[java.util.Arrays].binarySearch(char[],int,int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.util.Collection<String>)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionDepth: 4
    returnType: "java.util.function.ToIntFunction<String>"
    argCount: 1
    argTypes:
    - "java.util.Collection<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].size()"
    - "[java.util.ArrayDeque].size()"
    - "[com.google.common.collect.Collections2$TransformedCollection].size()"
    - "[com.google.common.collect.AbstractTable$CellSet].size()"
    - "[com.google.common.collect.MinMaxPriorityQueue].size()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].size()"
    - "[com.google.common.collect.LinkedHashMultiset].size()"
    - "[com.google.common.graph.MapIteratorCache$1].size()"
    - "[com.google.common.collect.Maps$Values].size()"
    - "[com.google.common.collect.Multisets$3].size()"
    - "[com.google.common.collect.FilteredMultimapValues].size()"
    - "[java.util.concurrent.ArrayBlockingQueue].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.EmptyContiguousSet].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.graph.UndirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.CompactHashSet].size()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.Multisets$ViewMultiset].size()"
    - "[com.google.common.graph.AbstractNetwork$1$1].size()"
    - "[java.util.HashSet].size()"
    - "[com.google.common.collect.Maps$KeySet].size()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].size()"
    - "[com.google.common.collect.Collections2$PermutationCollection].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[java.util.concurrent.CopyOnWriteArraySet].size()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].size()"
    - "[com.google.common.collect.Collections2$FilteredCollection].size()"
    - "[com.google.common.collect.Sets$SubSet].size()"
    - "[com.google.common.cache.LocalCache$AccessQueue].size()"
    - "[com.google.common.collect.Multimaps$Keys].size()"
    - "[com.google.common.graph.EdgesConnecting].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.AbstractTable$Values].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.collect.Sets$5$1$1].size()"
    - "[com.google.common.collect.ConcurrentHashMultiset].size()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].size()"
    - "[com.google.common.collect.ImmutableMultimap$Values].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.DescendingImmutableSortedMultiset].size()"
    - "[com.google.common.collect.Sets$PowerSet].size()"
    - "[com.google.common.collect.Sets$5].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[java.util.concurrent.SynchronousQueue].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableMultimap$Keys].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.cache.LocalCache$Values].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.concurrent.LinkedBlockingDeque].size()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.Maps$EntrySet].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.collect.Sets$4].size()"
    - "[com.google.common.cache.LocalCache$2].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.graph.DirectedGraphConnections$2].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.RegularImmutableMultiset].size()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Sets$2].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].size()"
    - "[com.google.common.graph.DirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.EnumMultiset].size()"
    - "[java.util.concurrent.PriorityBlockingQueue].size()"
    - "[com.google.common.collect.ImmutableEnumSet].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.AbstractMultimap$Values].size()"
    - "[java.util.concurrent.LinkedBlockingQueue].size()"
    - "[com.google.common.collect.Multisets$ElementSet].size()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].size()"
    - "[java.util.PriorityQueue].size()"
    - "[java.util.TreeSet].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.graph.DirectedGraphConnections$1].size()"
    - "[com.google.common.collect.TreeMultiset].size()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].size()"
    - "[com.google.common.collect.RegularImmutableSortedMultiset].size()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].size()"
    - "[com.google.common.collect.RegularImmutableSet].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableMultiset].size()"
    - "[com.google.common.collect.Multimaps$Entries].size()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].size()"
    - "[com.google.common.collect.ImmutableMapValues].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.Sets$3].size()"
    - "[com.google.common.graph.AbstractBaseGraph$1].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.graph.IncidentEdgeSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$3].size()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].size()"
    - "[com.google.common.collect.SingletonImmutableSet].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.cache.LocalCache$WriteQueue].size()"
    - "[com.google.common.collect.HashMultiset].size()"
    - "[com.google.common.collect.Sets$1].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$ValuesView].toArray(java.lang.Object[])"
    - "[com.google.common.cache.LocalCache$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Collections2$FilteredCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1KeySetImpl].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashSet].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.PriorityBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset].toArray(java.lang.Object[])"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1ValuesImpl].toArray(java.lang.Object[])"
    - "[java.util.PriorityQueue].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ForwardingCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Sets$DescendingSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingDeque].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[java.util.ArrayDeque].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$SafeToArraySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset$EntrySet].toArray(java.lang.Object[])"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ArrayBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$KeySetView].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArraySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredMapValues].toArray(java.lang.Object[])"
    - "[com.google.common.collect.DescendingMultiset].toArray(java.lang.Object[])"
    - "[java.util.concurrent.SynchronousQueue].toArray(java.lang.Object[])"
    - "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].bootstrap$()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 192
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:169"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:172"
        BranchSideFuncs:
        - "<init>()"
        - "toArray(java.lang.Object[])"
        - "buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:171"
        BranchSideFuncs:
        - "bootstrap$()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:168,1"
      Dst: "[java.util.Collection].size()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:170,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:170,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:172,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].bootstrap$()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 194
    functionDepth: 3
    returnType: "java.util.function.ToIntFunction<String>"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ImmutableStringTrie].buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].getChars(int,int,char[],int)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].<init>(char[])"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].<init>(char[],java.lang.String,java.util.function.ToIntFunction)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:180"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:188"
        BranchSideFuncs:
        - "<init>(char[])"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:187"
        BranchSideFuncs:
        - "<init>(char[],java.lang.String,java.util.function.ToIntFunction)"
        - "buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
        - "setLength(int)"
        - "length()"
        - "getChars(int,int,char[],int)"
        - "buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:181,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:182,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:183,1"
      Dst: "[java.lang.StringBuilder].getChars(int,int,char[],int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:184,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].<init>(char[])"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:191,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:193,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].buildTrie(java.lang.StringBuilder,java.lang.String[],int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:193,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].<init>(char[],java.lang.String,java.util.function.ToIntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 274
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotRow(java.lang.String[],char,int,int,int)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotColumn(java.lang.String[],int,int,int)"
    - "[java.lang.StringBuilder].insert(int,char)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    - "[java.lang.StringBuilder].delete(int,int)"
    functionUses: 4
    ICount: 82
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:212"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:265"
        BranchSideFuncs:
        - "nextPivotColumn(java.lang.String[],int,int,int)"
        - "nextPivotRow(java.lang.String[],char,int,int,int)"
        - "charAt(int)"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:264"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:230"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:230"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:230"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:239"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:245"
        BranchSideFuncs:
        - "buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:249"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:248"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:247"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:251"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:249"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:251"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:249"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:254"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:260"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:265"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:273"
        BranchSideFuncs:
        - "insert(int,char)"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:272"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:267"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:204,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:214,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:216,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:219,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotRow(java.lang.String[],char,int,int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:222,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotColumn(java.lang.String[],int,int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:232,1"
      Dst: "[java.lang.StringBuilder].insert(int,char)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:242,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].buildSubTrie(java.lang.StringBuilder,java.lang.String[],int,int,int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:270,1"
      Dst: "[java.lang.StringBuilder].delete(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 26
    CyclomaticComplexity: 13
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotRow(java.lang.String[],char,int,int,int)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "java.lang.String[]"
    - "char"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    functionUses: 2
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:284"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:291"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:290"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:286"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:287"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:286"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:286"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:284"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:286,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:286,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotColumn(java.lang.String[],int,int,int)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 312
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.lang.String[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotRow(java.lang.String[],char,int,int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:305"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:311"
        BranchSideFuncs:
        - "nextPivotRow(java.lang.String[],char,int,int,int)"
        - "charAt(int)"
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:310"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie:306"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:302"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie:301"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:303,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:306,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:306,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].nextPivotRow(java.lang.String[],char,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].<init>(char[])"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:196,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].<init>(char[],java.lang.String,java.util.function.ToIntFunction)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "java.lang.String"
    - "java.util.function.ToIntFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].<init>(char[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:322,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:323,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.ToIntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201:-1,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie:89,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Not].<init>(com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Not"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Not:70,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$Not:71,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Not"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 12
    ICount: 9
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$Not:76"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Not:75"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Not:76,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Not"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo:java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$Not:81"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Not:80"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$Not:81"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Not:80"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Not:81,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$Not].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Not"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Not:86,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Not].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Not"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Not:91,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor].compressPackagesInMessage(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.inject.internal.PackageNameCompressor].shortenNames(java.util.Collection)"
    - "[com.google.common.collect.ImmutableMap].isEmpty()"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].isEmpty()"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].isEmpty()"
    - "[com.google.common.collect.CompactHashMap].isEmpty()"
    - "[com.google.common.collect.Multimaps$AsMap].isEmpty()"
    - "[com.google.common.collect.ArrayTable$ArrayMap].isEmpty()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].isEmpty()"
    - "[com.google.common.collect.ForwardingMap].isEmpty()"
    - "[java.lang.StringBuilder].<init>()"
    - "[com.google.inject.internal.PackageNameCompressor].replaceFullNames(java.lang.String,java.util.Map,java.lang.StringBuilder)"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.inject.internal.PackageNameCompressor$contains__64].bootstrap$(java.util.Set)"
    - "[com.google.inject.internal.PackageNameCompressor].buildClassNameLegend(java.util.Map)"
    - "[com.google.common.collect.Maps].filterKeys(java.util.Map,com.google.common.base.Predicate)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[java.util.Set].isEmpty()"
    functionUses: 1
    ICount: 27
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PackageNameCompressor:94"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:100"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "group(int)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:99"
        BranchSideFuncs:
        - "shortenNames(java.util.Collection)"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:103"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:107"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:106"
        BranchSideFuncs:
        - "isEmpty()"
        - "replaceFullNames(java.lang.String,java.util.Map,java.lang.StringBuilder)"
        - "<init>()"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:114"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:113"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "requireNonNull(java.lang.Object)"
        - "buildClassNameLegend(java.util.Map)"
        - "filterKeys(java.util.Map,com.google.common.base.Predicate)"
        - "bootstrap$(java.util.Set)"
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor:89,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.PackageNameCompressor:91,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "com.google.inject.internal.PackageNameCompressor:94,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "com.google.inject.internal.PackageNameCompressor:95,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "com.google.inject.internal.PackageNameCompressor:96,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:100,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor].shortenNames(java.util.Collection)"
    - Src: "com.google.inject.internal.PackageNameCompressor:103,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "com.google.inject.internal.PackageNameCompressor:107,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.PackageNameCompressor:108,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor].replaceFullNames(java.lang.String,java.util.Map,java.lang.StringBuilder)"
    - Src: "com.google.inject.internal.PackageNameCompressor:109,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "com.google.inject.internal.PackageNameCompressor:114,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:114,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor$contains__64].bootstrap$(java.util.Set)"
    - Src: "com.google.inject.internal.PackageNameCompressor:114,1"
      Dst: "[com.google.common.collect.Maps].filterKeys(java.util.Map,com.google.common.base.Predicate)"
    - Src: "com.google.inject.internal.PackageNameCompressor:114,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor].buildClassNameLegend(java.util.Map)"
    - Src: "com.google.inject.internal.PackageNameCompressor:115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:115,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.PackageNameCompressor$contains__64].bootstrap$(java.util.Set)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$contains__64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Predicate"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PackageNameCompressor$contains__64].<init>(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$contains__64:-1,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor$contains__64].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor$contains__64].<init>(java.util.Set)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$contains__64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$contains__64:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor].replaceFullNames(java.lang.String,java.util.Map<String,String>,java.lang.StringBuilder)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet<String>"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map<String,String>"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$NavigableAsMap].keySet()"
    - "[com.google.common.collect.StandardRowSortedTable$RowSortedMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedNavigableMap].keySet()"
    - "[com.google.common.collect.ForwardingMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].keySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].keySet()"
    - "[com.google.common.collect.HashBiMap].keySet()"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.EnumMap].keySet()"
    - "[com.google.common.collect.HashBiMap$Inverse].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[com.google.common.collect.Maps$FilteredEntrySortedMap].keySet()"
    - "[com.google.common.collect.StandardTable$ColumnMap].keySet()"
    - "[com.google.common.collect.AbstractNavigableMap].keySet()"
    - "[com.google.common.collect.ImmutableSortedMap].keySet()"
    - "[com.google.common.collect.MapMakerInternalMap].keySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].keySet()"
    - "[com.google.common.collect.Maps$SortedAsMapView].keySet()"
    - "[com.google.common.cache.LocalCache].keySet()"
    - "[com.google.common.collect.EnumHashBiMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].keySet()"
    - "[com.google.common.collect.ArrayTable$ArrayMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$SortedAsMap].keySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[com.google.common.collect.Multimaps$AsMap].keySet()"
    - "[com.google.common.collect.Maps$DescendingMap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].keySet()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].keySet()"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].keySet()"
    - "[com.google.common.collect.AbstractBiMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.security.Provider].keySet()"
    - "[com.google.common.collect.EnumBiMap].keySet()"
    - "[com.google.common.collect.CompactHashMap].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[com.google.common.collect.Sets$UnmodifiableNavigableSet].stream()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[com.google.common.collect.Sets$2].stream()"
    - "[com.google.common.collect.Sets$3].stream()"
    - "[com.google.common.collect.Sets$1].stream()"
    - "[java.util.Collection].stream()"
    - "[com.google.common.collect.Ordering].natural()"
    - "[com.google.common.collect.Ordering].reverse()"
    - "[com.google.common.collect.NullsLastOrdering].reverse()"
    - "[com.google.common.collect.AllEqualOrdering].reverse()"
    - "[com.google.common.collect.NullsFirstOrdering].reverse()"
    - "[com.google.common.collect.NaturalOrdering].reverse()"
    - "[com.google.common.collect.ReverseNaturalOrdering].reverse()"
    - "[com.google.common.collect.ReverseOrdering].reverse()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[java.util.Map].keySet()"
    - "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 38
    EdgeCount: 266
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PackageNameCompressor:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:155"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:154"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:139"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:149"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "length()"
        - "get(java.lang.Object)"
        - "iterator()"
        - "replace(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:148"
        BranchSideFuncs:
        - "group(int)"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:145"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:148"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:147"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:151"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:154"
        BranchSideFuncs:
        - "append(java.lang.String)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor:128,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.PackageNameCompressor:133,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "com.google.inject.internal.PackageNameCompressor:133,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.PackageNameCompressor:134,1"
      Dst: "[com.google.common.collect.Ordering].natural()"
    - Src: "com.google.inject.internal.PackageNameCompressor:134,1"
      Dst: "[com.google.common.collect.Ordering].reverse()"
    - Src: "com.google.inject.internal.PackageNameCompressor:134,1"
      Dst: "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - Src: "com.google.inject.internal.PackageNameCompressor:135,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.PackageNameCompressor:135,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.PackageNameCompressor:136,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.PackageNameCompressor:137,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "com.google.inject.internal.PackageNameCompressor:138,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "com.google.inject.internal.PackageNameCompressor:139,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.PackageNameCompressor:139,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.PackageNameCompressor:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.PackageNameCompressor:140,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:141,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.PackageNameCompressor:142,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "com.google.inject.internal.PackageNameCompressor:146,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:149,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:155,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.PackageNameCompressor].buildClassNameLegend(java.util.Map<String,String>)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 194
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Map<String,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[com.google.inject.internal.PackageNameCompressor$length__65].bootstrap$()"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[java.util.Optional].get()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$NavigableAsMap].keySet()"
    - "[com.google.common.collect.StandardRowSortedTable$RowSortedMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedNavigableMap].keySet()"
    - "[com.google.common.collect.ForwardingMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].keySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].keySet()"
    - "[com.google.common.collect.HashBiMap].keySet()"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.EnumMap].keySet()"
    - "[com.google.common.collect.HashBiMap$Inverse].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[com.google.common.collect.Maps$FilteredEntrySortedMap].keySet()"
    - "[com.google.common.collect.StandardTable$ColumnMap].keySet()"
    - "[com.google.common.collect.AbstractNavigableMap].keySet()"
    - "[com.google.common.collect.ImmutableSortedMap].keySet()"
    - "[com.google.common.collect.MapMakerInternalMap].keySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].keySet()"
    - "[com.google.common.collect.Maps$SortedAsMapView].keySet()"
    - "[com.google.common.cache.LocalCache].keySet()"
    - "[com.google.common.collect.EnumHashBiMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].keySet()"
    - "[com.google.common.collect.ArrayTable$ArrayMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$SortedAsMap].keySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[com.google.common.collect.Multimaps$AsMap].keySet()"
    - "[com.google.common.collect.Maps$DescendingMap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].keySet()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].keySet()"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].keySet()"
    - "[com.google.common.collect.AbstractBiMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.security.Provider].keySet()"
    - "[com.google.common.collect.EnumBiMap].keySet()"
    - "[com.google.common.collect.CompactHashMap].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.lang.String].length()"
    - "[com.google.common.collect.Sets$UnmodifiableNavigableSet].stream()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[com.google.common.collect.Sets$2].stream()"
    - "[com.google.common.collect.Sets$3].stream()"
    - "[com.google.common.collect.Sets$1].stream()"
    - "[java.util.Collection].stream()"
    - "[java.util.EnumMap].entrySet()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].entrySet()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.Maps$DescendingMap].entrySet()"
    - "[com.google.common.collect.CompactHashMap].entrySet()"
    - "[java.security.Provider].entrySet()"
    - "[com.google.common.collect.ForwardingMap].entrySet()"
    - "[com.google.common.collect.HashBiMap].entrySet()"
    - "[com.google.common.collect.EnumHashBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].entrySet()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].entrySet()"
    - "[com.google.common.collect.MutableClassToInstanceMap].entrySet()"
    - "[com.google.common.collect.AbstractBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[com.google.common.collect.MapMakerInternalMap].entrySet()"
    - "[com.google.common.cache.LocalCache].entrySet()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].entrySet()"
    - "[com.google.common.collect.EnumBiMap].entrySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[java.lang.String].substring(int,int)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.common.base.Strings].repeat(java.lang.String,int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].length()"
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[com.google.inject.internal.Messages].faint(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].keySet()"
    - "[java.util.stream.Stream].max(java.util.Comparator)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 52
    EdgeCount: 385
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PackageNameCompressor:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:189"
        BranchSideFuncs:
        - "hasNext()"
        - "contains(java.lang.Object)"
        - "getValue()"
        - "next()"
        - "substring(int,int)"
        - "iterator()"
        - "contains(java.lang.CharSequence)"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:188"
        BranchSideFuncs:
        - "length()"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:171"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:177"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:176"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "repeat(java.lang.String,int)"
        - "append(char)"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:171"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:177"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:176"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "repeat(java.lang.String,int)"
        - "append(char)"
    - Branch String: "com.google.inject.internal.PackageNameCompressor:189"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:191"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:190"
        BranchSideFuncs:
        - "toString()"
        - "bold(java.lang.String)"
        - "faint(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor$length__65].bootstrap$()"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.util.stream.Stream].max(java.util.Comparator)"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.PackageNameCompressor:161,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.PackageNameCompressor:162,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.PackageNameCompressor:162,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.PackageNameCompressor:162,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.PackageNameCompressor:162,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.PackageNameCompressor:163,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.PackageNameCompressor:164,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.PackageNameCompressor:170,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "com.google.inject.internal.PackageNameCompressor:171,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:171,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.PackageNameCompressor:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:180,1"
      Dst: "[com.google.common.base.Strings].repeat(java.lang.String,int)"
    - Src: "com.google.inject.internal.PackageNameCompressor:183,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.PackageNameCompressor:189,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "com.google.inject.internal.PackageNameCompressor:191,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:192,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.PackageNameCompressor:192,1"
      Dst: "[com.google.inject.internal.Messages].faint(java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:193,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.PackageNameCompressor$length__65].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$length__65"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PackageNameCompressor$length__65].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$length__65:-1,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor$length__65].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor$length__65].<init>()"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$length__65"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$length__65:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].faint(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 315
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:314,1"
      Dst: "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor].shortenNames(java.util.Collection<String>)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "java.util.Map<String,String>"
    argCount: 1
    argTypes:
    - "java.util.Collection<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.HashMultimap].create()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[com.google.common.base.Splitter].splitToList(java.lang.CharSequence)"
    - "[java.util.ArrayList].remove(int)"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.collect.HashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[com.google.common.collect.HashMultimap].asMap()"
    - "[java.util.EnumMap].entrySet()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].entrySet()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.Maps$DescendingMap].entrySet()"
    - "[com.google.common.collect.CompactHashMap].entrySet()"
    - "[java.security.Provider].entrySet()"
    - "[com.google.common.collect.ForwardingMap].entrySet()"
    - "[com.google.common.collect.HashBiMap].entrySet()"
    - "[com.google.common.collect.EnumHashBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].entrySet()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].entrySet()"
    - "[com.google.common.collect.MutableClassToInstanceMap].entrySet()"
    - "[com.google.common.collect.AbstractBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[com.google.common.collect.MapMakerInternalMap].entrySet()"
    - "[com.google.common.cache.LocalCache].entrySet()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].entrySet()"
    - "[com.google.common.collect.EnumBiMap].entrySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].size()"
    - "[java.util.ArrayDeque].size()"
    - "[com.google.common.collect.Collections2$TransformedCollection].size()"
    - "[com.google.common.collect.AbstractTable$CellSet].size()"
    - "[com.google.common.collect.MinMaxPriorityQueue].size()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].size()"
    - "[com.google.common.collect.LinkedHashMultiset].size()"
    - "[com.google.common.graph.MapIteratorCache$1].size()"
    - "[com.google.common.collect.Maps$Values].size()"
    - "[com.google.common.collect.Multisets$3].size()"
    - "[com.google.common.collect.FilteredMultimapValues].size()"
    - "[java.util.concurrent.ArrayBlockingQueue].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.EmptyContiguousSet].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.graph.UndirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.CompactHashSet].size()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.Multisets$ViewMultiset].size()"
    - "[com.google.common.graph.AbstractNetwork$1$1].size()"
    - "[java.util.HashSet].size()"
    - "[com.google.common.collect.Maps$KeySet].size()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].size()"
    - "[com.google.common.collect.Collections2$PermutationCollection].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[java.util.concurrent.CopyOnWriteArraySet].size()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].size()"
    - "[com.google.common.collect.Collections2$FilteredCollection].size()"
    - "[com.google.common.collect.Sets$SubSet].size()"
    - "[com.google.common.cache.LocalCache$AccessQueue].size()"
    - "[com.google.common.collect.Multimaps$Keys].size()"
    - "[com.google.common.graph.EdgesConnecting].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.AbstractTable$Values].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.collect.Sets$5$1$1].size()"
    - "[com.google.common.collect.ConcurrentHashMultiset].size()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].size()"
    - "[com.google.common.collect.ImmutableMultimap$Values].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.DescendingImmutableSortedMultiset].size()"
    - "[com.google.common.collect.Sets$PowerSet].size()"
    - "[com.google.common.collect.Sets$5].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[java.util.concurrent.SynchronousQueue].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableMultimap$Keys].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.cache.LocalCache$Values].size()"
    - "[java.util.concurrent.LinkedBlockingDeque].size()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.Maps$EntrySet].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.collect.Sets$4].size()"
    - "[com.google.common.cache.LocalCache$2].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.graph.DirectedGraphConnections$2].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.RegularImmutableMultiset].size()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Sets$2].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].size()"
    - "[com.google.common.graph.DirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.EnumMultiset].size()"
    - "[java.util.concurrent.PriorityBlockingQueue].size()"
    - "[com.google.common.collect.ImmutableEnumSet].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.AbstractMultimap$Values].size()"
    - "[java.util.concurrent.LinkedBlockingQueue].size()"
    - "[com.google.common.collect.Multisets$ElementSet].size()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].size()"
    - "[java.util.PriorityQueue].size()"
    - "[java.util.TreeSet].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.graph.DirectedGraphConnections$1].size()"
    - "[com.google.common.collect.TreeMultiset].size()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].size()"
    - "[com.google.common.collect.RegularImmutableSortedMultiset].size()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].size()"
    - "[com.google.common.collect.RegularImmutableSet].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableMultiset].size()"
    - "[com.google.common.collect.Multimaps$Entries].size()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].size()"
    - "[com.google.common.collect.ImmutableMapValues].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.Sets$3].size()"
    - "[com.google.common.graph.AbstractBaseGraph$1].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.graph.IncidentEdgeSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$3].size()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].size()"
    - "[com.google.common.collect.SingletonImmutableSet].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.cache.LocalCache$WriteQueue].size()"
    - "[com.google.common.collect.HashMultiset].size()"
    - "[com.google.common.collect.Sets$1].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.HashMultimap].removeAll(java.lang.Object)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].remove(int)"
    - "[com.google.common.collect.ForwardingList].remove(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].remove(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].remove(int)"
    - "[com.google.common.collect.Lists$ReverseList].remove(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].remove(int)"
    - "[java.util.AbstractSequentialList].remove(int)"
    - "[com.google.common.collect.ImmutableList].remove(int)"
    - "[java.util.AbstractList].remove(int)"
    - "[java.util.Vector].remove(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].remove(int)"
    - "[java.util.LinkedList].remove(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - "[com.google.common.base.Joiner].join(java.lang.Iterable)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].size()"
    - "[java.util.List].remove(int)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Collection].size()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 82
    EdgeCount: 1490
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PackageNameCompressor:203"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:214"
        BranchSideFuncs:
        - "splitToList(java.lang.CharSequence)"
        - "<init>(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:213"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:222"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:221"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:217"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:220"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:219"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:222"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:227"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:226"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:227"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:238"
        BranchSideFuncs:
        - "removeAll(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:237"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:229"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:237"
        BranchSideFuncs:
        - "isEmpty()"
        - "remove(int)"
        - "size()"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:236"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:233"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:236"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:235"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.PackageNameCompressor:244"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:249"
        BranchSideFuncs:
        - "join(java.lang.Iterable)"
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "asMap()"
        - "put(java.lang.Object,java.lang.Object)"
        - "iterator()"
        - "entrySet()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.PackageNameCompressor:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor:202,1"
      Dst: "[com.google.common.collect.HashMultimap].create()"
    - Src: "com.google.inject.internal.PackageNameCompressor:203,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.PackageNameCompressor:203,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.PackageNameCompressor:203,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.PackageNameCompressor:204,1"
      Dst: "[com.google.common.base.Splitter].splitToList(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.PackageNameCompressor:204,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "com.google.inject.internal.PackageNameCompressor:206,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.PackageNameCompressor:206,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "com.google.inject.internal.PackageNameCompressor:207,1"
      Dst: "[com.google.common.collect.HashMultimap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:214,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.PackageNameCompressor:216,1"
      Dst: "[com.google.common.collect.HashMultimap].asMap()"
    - Src: "com.google.inject.internal.PackageNameCompressor:216,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.PackageNameCompressor:216,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.PackageNameCompressor:217,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.PackageNameCompressor:217,1"
      Dst: "[java.util.Collection].size()"
    - Src: "com.google.inject.internal.PackageNameCompressor:218,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.PackageNameCompressor:218,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:222,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.PackageNameCompressor:227,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.PackageNameCompressor:228,1"
      Dst: "[com.google.common.collect.HashMultimap].removeAll(java.lang.Object)"
    - Src: "com.google.inject.internal.PackageNameCompressor:230,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.PackageNameCompressor:242,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "com.google.inject.internal.PackageNameCompressor:247,1"
      Dst: "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - Src: "com.google.inject.internal.PackageNameCompressor:247,1"
      Dst: "[com.google.common.base.Joiner].join(java.lang.Iterable)"
    - Src: "com.google.inject.internal.PackageNameCompressor:245,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 23
    CyclomaticComplexity: 9
  - functionName: "[com.google.inject.internal.PackageNameCompressor].<init>()"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor:252,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.FastClass].generateGlue(java.util.Collection<Executable>)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.util.Collection<Executable>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].<init>(int)"
    - "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.FieldVisitor].visitEnd()"
    - "[org.objectweb.asm.FieldWriter].visitEnd()"
    - "[com.google.inject.internal.aop.FastClass].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].generateTrampoline(org.objectweb.asm.ClassWriter,java.util.Collection)"
    - "[org.objectweb.asm.ClassWriter].visitEnd()"
    - "[org.objectweb.asm.ClassWriter].toByteArray()"
    functionUses: 1
    ICount: 42
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:126,1"
      Dst: "[org.objectweb.asm.ClassWriter].<init>(int)"
    - Src: "com.google.inject.internal.aop.FastClass:130,1"
      Dst: "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.FastClass:131,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:134,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.FastClass:135,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitEnd()"
    - Src: "com.google.inject.internal.aop.FastClass:137,1"
      Dst: "[com.google.inject.internal.aop.FastClass].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    - Src: "com.google.inject.internal.aop.FastClass:142,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.FastClass:143,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    - Src: "com.google.inject.internal.aop.FastClass:144,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.FastClass:145,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.FastClass:146,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.FastClass:148,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:150,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.FastClass:151,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - Src: "com.google.inject.internal.aop.FastClass:161,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:168,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].generateTrampoline(org.objectweb.asm.ClassWriter,java.util.Collection)"
    - Src: "com.google.inject.internal.aop.FastClass:170,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitEnd()"
    - Src: "com.google.inject.internal.aop.FastClass:171,1"
      Dst: "[org.objectweb.asm.ClassWriter].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.FastClass].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitCode()"
    - "[org.objectweb.asm.Handle].<init>(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    functionUses: 1
    ICount: 17
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:176,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.FastClass:177,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    - Src: "com.google.inject.internal.aop.FastClass:179,1"
      Dst: "[org.objectweb.asm.Handle].<init>(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.FastClass:181,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.FastClass:185,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.FastClass:192,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:194,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.FastClass:195,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.FastClass:196,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.FastClass].generateConstructorInvoker(org.objectweb.asm.MethodVisitor,java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 211
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    functionUses: 1
    ICount: 12
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:201,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:202,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.FastClass:206,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.FastClass:206,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.FastClass:209,1"
      Dst: "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.FastClass:208,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[java.lang.Class].isPrimitive()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[com.google.inject.internal.aop.BytecodeTasks].unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    functionUses: 4
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:78"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:89"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "isPrimitive()"
        - "visitVarInsn(int,int)"
        - "pushInteger(org.objectweb.asm.MethodVisitor,int)"
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:88"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:86"
        BranchSideFuncs:
        - "unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
        - "getType(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:85"
        BranchSideFuncs:
        - "getInternalName(java.lang.Class)"
        - "visitTypeInsn(int,java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:80,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:81,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:82,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:83,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:84,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:84,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:86,1"
      Dst: "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:86,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitIntInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:47"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:46"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:47"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:49"
        BranchSideFuncs:
        - "visitInsn(int)"
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:48"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:49"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:51"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:50"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:51"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:54"
        BranchSideFuncs:
        - "visitIntInsn(int,int)"
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:53"
        BranchSideFuncs:
        - "valueOf(int)"
        - "visitLdcInsn(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:46,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:46,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:48,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:50,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionUses: 2
    ICount: 56
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:154,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:199,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:200,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.aop.FastClass].generateMethodInvoker(org.objectweb.asm.MethodVisitor,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 242
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.reflect.Method].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[java.lang.Class].isPrimitive()"
    - "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 1
    ICount: 34
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.FastClass:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.FastClass:222"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.FastClass:220"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.FastClass:217"
        BranchSideFuncs:
        - "visitVarInsn(int,int)"
        - "visitTypeInsn(int,java.lang.String)"
    - Branch String: "com.google.inject.internal.aop.FastClass:236"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.FastClass:238"
        BranchSideFuncs:
        - "visitInsn(int)"
      - BranchSide: "com.google.inject.internal.aop.FastClass:237"
        BranchSideFuncs:
        - "isPrimitive()"
    - Branch String: "com.google.inject.internal.aop.FastClass:238"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.FastClass:241"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
      - BranchSide: "com.google.inject.internal.aop.FastClass:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:216,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.FastClass:218,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.FastClass:219,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:226,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.FastClass:226,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.FastClass:231,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.FastClass:232,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.FastClass:228,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.FastClass:235,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.aop.FastClass:237,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.FastClass:238,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.FastClass:239,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.FastClass:239,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionUses: 3
    ICount: 31
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:108,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:145,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.aop.FastClass].lookupInvokerTable(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.FastClass"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "java.lang.invoke.MethodHandle"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[java.lang.Class].getField(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.FastClass:245,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "com.google.inject.internal.aop.FastClass:245,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$trimSource__148].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$trimSource__148"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.MissingImplementationError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].<init>(com.google.inject.internal.MissingImplementationError)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$trimSource__148:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$trimSource__148].<init>(com.google.inject.internal.MissingImplementationError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$trimSource__148].<init>(com.google.inject.internal.MissingImplementationError)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$trimSource__148"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.MissingImplementationError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$trimSource__148:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$trimSource__148].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$trimSource__148"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].trimSource(java.util.List)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$trimSource__148:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].trimSource(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$getSources__145].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$getSources__145"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$getSources__145:-1,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError$getSources__145].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$getSources__145].<init>()"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$getSources__145"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$getSources__145:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$getSources__145].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$getSources__145"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$getSources__145:-1,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$add__169].bootstrap$(com.google.common.collect.ImmutableList$Builder)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$add__169"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableList$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$add__169].<init>(com.google.common.collect.ImmutableList$Builder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$add__169:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$add__169].<init>(com.google.common.collect.ImmutableList$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$add__169].<init>(com.google.common.collect.ImmutableList$Builder)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$add__169"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableList$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$add__169:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$add__169].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$add__169"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$add__169:-1,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.MissingImplementationError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].<init>(com.google.inject.internal.MissingImplementationError)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].<init>(com.google.inject.internal.MissingImplementationError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].<init>(com.google.inject.internal.MissingImplementationError)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.MissingImplementationError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].lambda$trimSource$3(java.lang.Object)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].lambda$trimSource$3(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].lambda$trimSource$3(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[com.google.common.base.Absent:com.google.common.base.Predicates$InstanceOfPredicate:com.google.common.base.Predicates$SubtypeOfPredicate:com.google.common.cache.CacheStats:com.google.common.collect.Count:com.google.common.collect.ImmutableEnumSet:com.google.common.hash.Murmur3_128HashFunction:com.google.common.hash.Murmur3_32HashFunction:com.google.common.hash.SipHashFunction:com.google.common.primitives.UnsignedInteger:com.google.common.primitives.UnsignedLong:com.google.common.reflect.TypeParameter:com.google.inject.matcher.Matchers$IdenticalTo:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.security.auth.Subject:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 237
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationError:82"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:81"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$contains__54].bootstrap$(com.google.common.collect.ImmutableSet)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$contains__54"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$contains__54].<init>(com.google.common.collect.ImmutableSet)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$contains__54:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$contains__54].<init>(com.google.common.collect.ImmutableSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$contains__54].<init>(com.google.common.collect.ImmutableSet)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$contains__54"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$contains__54:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$contains__54].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$contains__54"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    functionUses: 9
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$contains__54:-1,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore$1].<init>(com.google.inject.internal.MembersInjectorStore)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.MembersInjectorStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore$1:45,1"
      Dst: "[com.google.inject.internal.FailableCache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore$1].create(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "com.google.inject.internal.MembersInjectorImpl"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore].createWithListeners(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore$1:49,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].createWithListeners(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore$1].create(java.lang.Object,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore$1].create(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore$1:45,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore$1].create(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReferenceState].values()"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReferenceState"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "com.google.inject.internal.Initializer$InjectableReferenceState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.text.Collator].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.util.Calendar].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.util.Vector].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.Date].clone()"
    - "[java.util.TreeSet].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.Properties].clone()"
    - "[java.security.Signature].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.BitSet].clone()"
    - "[java.util.EnumMap].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Object].clone()"
    - "[java.text.NumberFormat].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 45
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReferenceState:161,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReferenceState].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReferenceState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Initializer$InjectableReferenceState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReferenceState:161,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReferenceState].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReferenceState"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReferenceState:161,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReferenceState].$values()"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReferenceState"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "com.google.inject.internal.Initializer$InjectableReferenceState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:92,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.multibindings.Multibinder:92,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:100,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.multibindings.Multibinder:100,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<T>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<T>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:109,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.multibindings.Multibinder:109,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,java.lang.Class<T>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<T>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:118,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.multibindings.Multibinder:118,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<T>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<T>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.Class)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:127,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.Class)"
    - Src: "com.google.inject.multibindings.Multibinder:127,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.multibindings.Multibinder].<init>(com.google.inject.internal.RealMultibinder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:137,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.multibindings.Multibinder:137,1"
      Dst: "[com.google.inject.multibindings.Multibinder].<init>(com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].<init>(com.google.inject.internal.RealMultibinder)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMultibinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:151,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,java.lang.Class<T>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.Multibinder<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<T>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class,java.lang.Class)"
    - "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:146,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.multibindings.Multibinder:146,1"
      Dst: "[com.google.inject.multibindings.Multibinder].newSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].permitDuplicates()"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.multibindings.Multibinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].permitDuplicates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:164,1"
      Dst: "[com.google.inject.internal.RealMultibinder].permitDuplicates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].permitDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].<init>(com.google.inject.Key)"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:123,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - Src: "com.google.inject.internal.RealMultibinder:123,1"
      Dst: "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].<init>(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder:123,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 481
    functionDepth: 4
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.name.Names].named(java.lang.String)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:476"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:478,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:478,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:478,1"
      Dst: "[com.google.inject.name.Names].named(java.lang.String)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:478,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    - "[java.lang.String].isEmpty()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,com.google.inject.TypeLiteral)"
    functionUses: 20
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:577"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:576"
        BranchSideFuncs:
        - "getSetName()"
        - "isEmpty()"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:577,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:577,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:577,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:577,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].<init>(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.AbstractModule].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:606,1"
      Dst: "[com.google.inject.AbstractModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].addBinding()"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].addBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:179,1"
      Dst: "[com.google.inject.internal.RealMultibinder].addBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    functionUses: 56
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.multibindings.Multibinder:186"
      Branch Sides:
      - BranchSide: "com.google.inject.multibindings.Multibinder:189"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.multibindings.Multibinder:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:187,1"
      Dst: "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    functionUses: 57
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder:586"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder:586"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMultibinder:585"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder:587"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder:585"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:587,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 568
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:564"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:567"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:566"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:565,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.Multibinder].hashCode()"
    functionSourceFile: "com.google.inject.multibindings.Multibinder"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.Multibinder:194,1"
      Dst: "[com.google.inject.internal.RealMultibinder].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 593
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].hashCode()"
    functionUses: 35
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:592,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 571
    functionLinenumberEnd: 573
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].hashCode()"
    functionUses: 36
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:572,1"
      Dst: "[com.google.inject.Key].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].hashCode()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 40
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:50,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:62,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:72"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:77"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:73,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getInjector()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].initInjector(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:86"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:85"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:86,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:87,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps].newLinkedHashMap()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.ExposureBuilder].getKey()"
    - "[com.google.inject.internal.ExposureBuilder].getSource()"
    - "[com.google.common.collect.ImmutableSortedMap:java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 20
    EdgeCount: 130
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:101"
        BranchSideFuncs:
        - "newLinkedHashMap()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:100"
        BranchSideFuncs:
        - "keySet()"
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:94"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:97"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "hasNext()"
        - "getSource()"
        - "iterator()"
        - "next()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:96"
        BranchSideFuncs:
        - "copyOf(java.util.Map)"
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:93,1"
      Dst: "[com.google.common.collect.Maps].newLinkedHashMap()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:94,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:94,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:94,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:95,1"
      Dst: "[com.google.inject.internal.ExposureBuilder].getKey()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:95,1"
      Dst: "[com.google.inject.internal.ExposureBuilder].getSource()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:95,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:97,1"
      Dst: "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:101,1"
      Dst: "[com.google.common.collect.ImmutableMap].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ExposureBuilder].getKey()"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposureBuilder].getSource()"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingProcessor].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.util.Modules$OverrideModule$1].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.spi.BindingSourceRestriction$2].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.internal.PrivateElementProcessor].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.spi.BindingSourceRestriction$1].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.util.Modules$OverrideModule$2].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.PrivateElements)"
    functionUses: 5
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:106,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.PrivateElements)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getElementsMutable()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].addExposureBuilder(com.google.inject.internal.ExposureBuilder<?>)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ExposureBuilder<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:114,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 130
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.LinkedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ExposedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.MembersInjectorLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.UntargettedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.StaticInjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Message].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeConverterBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.PrivateElementsImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProvisionListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ConstructorBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ScopeBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InterceptorBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProviderLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.inject.spi.Elements$RecordingBinder].expose(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry:com.google.common.collect.HashBiMap$1$MapEntry:com.google.common.collect.HashBiMap$Inverse$1$InverseEntry:com.google.common.collect.ImmutableEntry:com.google.common.collect.LinkedListMultimap$Node:com.google.common.collect.MapMakerInternalMap$WriteThroughEntry:com.google.common.collect.TreeRangeMap$RangeMapEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].newPrivateBinder()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - "[java.util.Map$Entry].getKey()"
    - "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    functionUses: 4
    ICount: 28
    EdgeCount: 228
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:121"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:125"
        BranchSideFuncs:
        - "applyTo(com.google.inject.Binder)"
        - "getElements()"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:124"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "entrySet()"
        - "getExposedKeys()"
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:126"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:129"
        BranchSideFuncs:
        - "hasNext()"
        - "expose(com.google.inject.Key)"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "entrySet()"
        - "getKey()"
        - "withSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:119,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:119,1"
      Dst: "[com.google.inject.Binder].newPrivateBinder()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:121,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:121,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:121,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:122,1"
      Dst: "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:125,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:126,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:126,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:127,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:127,1"
      Dst: "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:127,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:127,1"
      Dst: "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].getExposedSource(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.PrivateElementsImpl:135"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:133"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.PrivateElementsImpl:132"
        BranchSideFuncs:
        - "getExposedKeys()"
        - "get(java.lang.Object)"
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:133,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:134,1"
      Dst: "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:135,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.PrivateElementsImpl].toString()"
    functionSourceFile: "com.google.inject.internal.PrivateElementsImpl"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 145
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementsImpl:141,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:142,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:142,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementsImpl:143,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    - Src: "com.google.inject.internal.PrivateElementsImpl:144,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].<init>()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].override(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.util.Modules$OverriddenModuleBuilder"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.util.Modules].override(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:85,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.util.Modules:85,1"
      Dst: "[com.google.inject.util.Modules].override(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].override()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.util.Modules$OverriddenModuleBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.util.Modules].override(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:91,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.util.Modules:91,1"
      Dst: "[com.google.inject.util.Modules].override(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].override(java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.util.Modules$OverriddenModuleBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:112,1"
      Dst: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.util.Modules$RealOverriddenModuleBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:186,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:187,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].combine(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Object[])"
    - "[com.google.inject.util.Modules].combine(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:123,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Object[])"
    - Src: "com.google.inject.util.Modules:123,1"
      Dst: "[com.google.inject.util.Modules].combine(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].combine(com.google.inject.Module)"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "com.google.inject.Module"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].combine()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].combine(java.lang.Iterable<? extends\
      \ Module>)"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$CombinedModule].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:149,1"
      Dst: "[com.google.inject.util.Modules$CombinedModule].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$CombinedModule].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.util.Modules$CombinedModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$CombinedModule:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.util.Modules$CombinedModule:156,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].extractScanners(java.lang.Iterable<Element>)"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 408
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<Element>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.util.Modules$1].<init>(java.util.List)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.ScopeBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProviderLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InterceptorBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.PrivateElementsImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeConverterBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProvisionListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.BindingImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.StaticInjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Message].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.MembersInjectorLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.util.Modules$2].<init>(java.util.List)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    functionUses: 1
    ICount: 14
    EdgeCount: 321
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules:404"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules:407"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "acceptVisitor(com.google.inject.spi.ElementVisitor)"
      - BranchSide: "com.google.inject.util.Modules:406"
        BranchSideFuncs:
        - "<init>(java.util.List)"
    Callsites:
    - Src: "com.google.inject.util.Modules:395,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.util.Modules:396,1"
      Dst: "[com.google.inject.util.Modules$1].<init>(java.util.List)"
    - Src: "com.google.inject.util.Modules:404,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.util.Modules:404,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules:404,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules:405,1"
      Dst: "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - Src: "com.google.inject.util.Modules:407,1"
      Dst: "[com.google.inject.util.Modules$2].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.util.Modules$1].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.util.Modules$1"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$1:397,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$2].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.util.Modules$2"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 408
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.AbstractModule].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$2:407,1"
      Dst: "[com.google.inject.AbstractModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].requireExplicitBindingsModule()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$RequireExplicitBindingsModule].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:423,1"
      Dst: "[com.google.inject.util.Modules$RequireExplicitBindingsModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireExplicitBindingsModule].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$RequireExplicitBindingsModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireExplicitBindingsModule:426,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].requireAtInjectOnConstructorsModule()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:441,1"
      Dst: "[com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule:444,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].requireExactBindingAnnotationsModule()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$RequireExactBindingAnnotationsModule].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:459,1"
      Dst: "[com.google.inject.util.Modules$RequireExactBindingAnnotationsModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireExactBindingAnnotationsModule].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$RequireExactBindingAnnotationsModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireExactBindingAnnotationsModule:462,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules].disableCircularProxiesModule()"
    functionSourceFile: "com.google.inject.util.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$DisableCircularProxiesModule].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules:475,1"
      Dst: "[com.google.inject.util.Modules$DisableCircularProxiesModule].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$DisableCircularProxiesModule].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$DisableCircularProxiesModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$DisableCircularProxiesModule:478,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$CombinedModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$CombinedModule"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.Elements$RecordingBinder].skipSources(java.lang.Class[])"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 1
    ICount: 15
    EdgeCount: 226
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$CombinedModule:162"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$CombinedModule:165"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "install(com.google.inject.Module)"
        - "next()"
      - BranchSide: "com.google.inject.util.Modules$CombinedModule:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Modules$CombinedModule:161,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.util.Modules$CombinedModule:161,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - Src: "com.google.inject.util.Modules$CombinedModule:162,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.util.Modules$CombinedModule:162,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$CombinedModule:162,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$CombinedModule:163,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__77].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__77"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__77].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__77:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__77].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__77].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__77"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__77:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__77].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__77"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__77:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$1].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassValue].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$1:48,1"
      Dst: "[java.lang.ClassValue].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$1].computeValue(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$1:52,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.OutOfScopeException].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.OutOfScopeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.OutOfScopeException:29,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.OutOfScopeException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.OutOfScopeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.OutOfScopeException:33,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.OutOfScopeException].<init>(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.OutOfScopeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.OutOfScopeException:37,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMembers].<init>()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMembers"
    linkageType: ""
    functionLinenumber: 544
    functionLinenumberEnd: 546
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableMembers:545,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMembers].add(com.google.inject.spi.InjectionPoint$InjectableMember)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMembers"
    linkageType: ""
    functionLinenumber: 549
    functionLinenumberEnd: 558
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint$InjectableMember"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:550"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:553"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:552"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMembers].remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMembers"
    linkageType: ""
    functionLinenumber: 559
    functionLinenumberEnd: 573
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint$InjectableMember"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:560"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:563"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:562"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:563"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:566"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:565"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:566"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:569"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:568"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:569"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:572"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:571"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMembers].isEmpty()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMembers"
    linkageType: ""
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$InjectableMembers:575"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$InjectableMembers:574"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.PrivilegedExceptionAction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].run()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AnonymousClassDefiner].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__39:-1,1"
      Dst: "[com.google.inject.internal.aop.AnonymousClassDefiner].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AnonymousClassDefiner].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.AnonymousClassDefiner"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AnonymousClassDefiner:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].<init>(java.util.Set,jakarta.inject.Provider)"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "jakarta.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].<init>(jakarta.inject.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies:161,1"
      Dst: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].<init>(jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].initialize(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].injectMembers(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies:168,1"
      Dst: "[com.google.inject.Injector].injectMembers(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].getDependencies()"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$1(java.util.Map,java.lang.reflect.Method)"
    functionUses: 25
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$1(java.util.Map,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToInitializableAdapter].<init>(com.google.inject.internal.Initializable,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToInitializableAdapter"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.Initializable"
    - "java.lang.Object"
    - "com.google.inject.internal.ProvisionListenerStackCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:39,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:41,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToInitializableAdapter"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.internal.Initializer$InjectableReference].get()"
    - "[com.google.inject.internal.Initializables$1].get()"
    - "[com.google.inject.internal.Initializable].get()"
    functionUses: 12
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:47,1"
      Dst: "[com.google.inject.internal.Initializable].get()"
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:47,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToInitializableAdapter].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToInitializableAdapter"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "jakarta.inject.Provider"
    - "com.google.inject.spi.Dependency"
    - "com.google.inject.internal.ConstructionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:57,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:59,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:59,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:111,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 101
    functionDepth: 9
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$WriteQueue].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Collections2$TransformedCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$Values].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Maps$Values].isEmpty()"
    - "[com.google.common.cache.LocalCache$AccessQueue].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection:com.google.common.collect.Collections2$PermutationCollection:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.RegularContiguousSet:com.google.common.collect.Sets$PowerSet:com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Shorts$ShortArrayAsList:java.util.AbstractCollection:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.SynchronousQueue].isEmpty()"
    - "[com.google.inject.internal.InternalProvisionException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.util.Collection].isEmpty()"
    functionUses: 6
    ICount: 14
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalProvisionException:94"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:93,1"
      Dst: "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - Src: "com.google.inject.internal.InternalProvisionException:94,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.internal.InternalProvisionException:97,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].<init>(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InternalProvisionException:100,1"
      Dst: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.InternalProvisionException:100,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 542
    functionLinenumberEnd: 551
    functionDepth: 1
    returnType: "java.util.Collection<Message>"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.ProvisionException].getErrorMessages()"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.CreationException].getErrorMessages()"
    - "[com.google.common.collect.ImmutableSet].of()"
    functionUses: 4
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:543"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:545"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:544"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Errors:545"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:547"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:546"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Errors:547"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:550"
        BranchSideFuncs:
        - "getErrorMessages()"
      - BranchSide: "com.google.inject.internal.Errors:549"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.Errors:544,1"
      Dst: "[com.google.inject.ProvisionException].getErrorMessages()"
    - Src: "com.google.inject.internal.Errors:546,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.Errors:548,1"
      Dst: "[com.google.inject.CreationException].getErrorMessages()"
    - Src: "com.google.inject.internal.Errors:550,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ProvisionException].getErrorMessages()"
    functionSourceFile: "com.google.inject.ProvisionException"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ConfigurationException].getErrorMessages()"
    functionSourceFile: "com.google.inject.ConfigurationException"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.CreationException].getErrorMessages()"
    functionSourceFile: "com.google.inject.CreationException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Exception].<init>()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Iterable)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    functionUses: 2
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalProvisionException:209"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:207"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.InternalProvisionException:206"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
        - "isEmpty()"
        - "<init>()"
        - "copyOf(java.lang.Iterable)"
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:207,1"
      Dst: "[java.lang.Exception].<init>()"
    - Src: "com.google.inject.internal.InternalProvisionException:200,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.InternalProvisionException:208,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InternalProvisionException:209,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.internal.InternalProvisionException:209,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 8
    returnType: "com.google.inject.spi.Message"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.util.List,java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:139,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.internal.Messages:139,1"
      Dst: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.util.List,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].<init>(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:204,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalProvisionException:204,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 236
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 20
    ICount: 16
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalProvisionException:224"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:227"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InternalProvisionException:226"
        BranchSideFuncs:
        - "get(int)"
        - "size()"
    - Branch String: "com.google.inject.internal.InternalProvisionException:228"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:233"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "com.google.inject.internal.InternalProvisionException:228"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:233"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:227,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.InternalProvisionException:228,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.InternalProvisionException:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToInitializableAdapter"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 21
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToInitializableAdapter:65,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LookupProcessor].visit(com.google.inject.spi.MembersInjectorLookup<T>)"
    functionSourceFile: "com.google.inject.internal.LookupProcessor"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.MembersInjectorLookup<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.MembersInjectorLookup].getType()"
    - "[com.google.inject.spi.MembersInjectorLookup].initializeDelegate(com.google.inject.MembersInjector)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putMembersInjectorLookup(com.google.inject.spi.MembersInjectorLookup)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 18
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LookupProcessor:40,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].getType()"
    - Src: "com.google.inject.internal.LookupProcessor:40,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.LookupProcessor:41,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].initializeDelegate(com.google.inject.MembersInjector)"
    - Src: "com.google.inject.internal.LookupProcessor:42,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.LookupProcessor:42,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putMembersInjectorLookup(com.google.inject.spi.MembersInjectorLookup)"
    - Src: "com.google.inject.internal.LookupProcessor:44,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.LookupProcessor:44,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.LookupProcessor:47,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].getType()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorBindingData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorsException].getErrors()"
    functionSourceFile: "com.google.inject.internal.ErrorsException"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 619
    functionLinenumberEnd: 626
    functionDepth: 0
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    functionUses: 15
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:620"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:621"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:620"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Errors:620"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:624"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:623"
        BranchSideFuncs:
        - "merge(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:624,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.LookupProcessor].visit(com.google.inject.spi.ProviderLookup<T>)"
    functionSourceFile: "com.google.inject.internal.LookupProcessor"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderLookup<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].getDependency()"
    - "[com.google.inject.internal.InjectorImpl].getProviderOrThrow(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.ProviderLookup].initializeDelegate(com.google.inject.Provider)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putProviderLookup(com.google.inject.spi.ProviderLookup)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LookupProcessor:54,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getDependency()"
    - Src: "com.google.inject.internal.LookupProcessor:54,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProviderOrThrow(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.LookupProcessor:55,1"
      Dst: "[com.google.inject.spi.ProviderLookup].initializeDelegate(com.google.inject.Provider)"
    - Src: "com.google.inject.internal.LookupProcessor:56,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.LookupProcessor:56,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putProviderLookup(com.google.inject.spi.ProviderLookup)"
    - Src: "com.google.inject.internal.LookupProcessor:58,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.LookupProcessor:58,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.LookupProcessor:61,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].getDependency()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "com.google.inject.spi.Dependency"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Enhanced].<init>()"
    functionSourceFile: "com.google.inject.util.Enhanced"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Enhanced:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Enhanced].isEnhanced(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.util.Enhanced"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Enhanced:32,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.util.Enhanced:32,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Enhanced].unenhancedClass(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.util.Enhanced"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Optional<Class<? super T>>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Enhanced].isEnhanced(java.lang.Class)"
    - "[java.lang.Class].getSuperclass()"
    - "[java.util.Optional].of(java.lang.Object)"
    - "[java.util.Optional].empty()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.util.Enhanced:40"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Enhanced:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Enhanced:40,1"
      Dst: "[com.google.inject.util.Enhanced].isEnhanced(java.lang.Class)"
    - Src: "com.google.inject.util.Enhanced:40,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "com.google.inject.util.Enhanced:40,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    - Src: "com.google.inject.util.Enhanced:40,1"
      Dst: "[java.util.Optional].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations$AnnotationChecker].<init>(java.util.Collection)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationChecker"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 339
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations$AnnotationChecker$1].<init>(com.google.inject.internal.Annotations$AnnotationChecker)"
    - "[com.google.common.cache.CacheBuilder].build(com.google.common.cache.CacheLoader)"
    - "[com.google.common.cache.CacheBuilder].newBuilder()"
    - "[com.google.common.cache.CacheBuilder].weakKeys()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:336,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:319,1"
      Dst: "[com.google.inject.internal.Annotations$AnnotationChecker$1].<init>(com.google.inject.internal.Annotations$AnnotationChecker)"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:333,1"
      Dst: "[com.google.common.cache.CacheBuilder].newBuilder()"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:333,1"
      Dst: "[com.google.common.cache.CacheBuilder].weakKeys()"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:333,1"
      Dst: "[com.google.common.cache.CacheBuilder].build(com.google.common.cache.CacheLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$AnnotationChecker].hasAnnotations(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationChecker"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:342,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker:342,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].circularDependenciesDisabled(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:73,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 7
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:88,1"
      Dst: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.InternalProvisionException:88,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 9
    returnType: "com.google.inject.spi.Message"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:126,1"
      Dst: "[com.google.inject.internal.Messages].create(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].cannotProxyClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:80,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].subtypeNotProvided(java.lang.Class<?\
      \ extends jakarta.inject.Provider<?>>,java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 2
    argTypes:
    - "java.lang.Class<? extends jakarta.inject.Provider<?>>"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:106,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorInjectingMethod(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:115,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorInjectingConstructor(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:119,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorInUserInjector(com.google.inject.MembersInjector<?>,com.google.inject.TypeLiteral<?>,java.lang.RuntimeException)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 3
    argTypes:
    - "com.google.inject.MembersInjector<?>"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.RuntimeException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:124,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].jitDisabled(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:134,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].errorNotifyingInjectionListener(com.google.inject.spi.InjectionListener<?>,com.google.inject.TypeLiteral<?>,java.lang.RuntimeException)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 10
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.InjectionListener<?>"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.RuntimeException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:142,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].onNullInjectedIntoNonNullableDependency(java.lang.Object,com.google.inject.spi.Dependency<?>)"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 198
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.Dependency<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    - "[com.google.inject.internal.InternalFlags].getNullableProvidesOption()"
    - "[java.lang.Enum].ordinal()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].getParameterName(com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.spi.Dependency].getParameterIndex()"
    - "[com.google.inject.internal.util.StackTraceElements].forMember(java.lang.reflect.Member)"
    - "[java.lang.String].isEmpty()"
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.Object)"
    functionUses: 3
    ICount: 52
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalProvisionException:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:185"
        BranchSideFuncs:
        - "isAnnotationPresent(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.InternalProvisionException:184"
        BranchSideFuncs:
        - "getParameterIndex()"
        - "getParameterName(com.google.inject.spi.Dependency)"
    - Branch String: "com.google.inject.internal.InternalProvisionException:160"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:185"
        BranchSideFuncs:
        - "getNullableProvidesOption()"
        - "ordinal()"
      - BranchSide: "com.google.inject.internal.InternalProvisionException:184"
        BranchSideFuncs:
        - "getParameterIndex()"
        - "getParameterName(com.google.inject.spi.Dependency)"
    - Branch String: "com.google.inject.internal.InternalProvisionException:168"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:178"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InternalProvisionException:185"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:184"
        BranchSideFuncs:
        - "getParameterIndex()"
        - "getParameterName(com.google.inject.spi.Dependency)"
    - Branch String: "com.google.inject.internal.InternalProvisionException:189"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:191"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InternalProvisionException:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:158,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.InternalProvisionException:158,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.InternalProvisionException:160,1"
      Dst: "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    - Src: "com.google.inject.internal.InternalProvisionException:161,1"
      Dst: "[com.google.inject.internal.InternalFlags].getNullableProvidesOption()"
    - Src: "com.google.inject.internal.InternalProvisionException:161,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "com.google.inject.internal.InternalProvisionException:168,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalProvisionException:175,1"
      Dst: "[com.google.inject.internal.SourceFormatter].getParameterName(com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.internal.InternalProvisionException:176,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.InternalProvisionException:176,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalProvisionException:169,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.InternalProvisionException:185,1"
      Dst: "[com.google.inject.spi.Dependency].getParameterIndex()"
    - Src: "com.google.inject.internal.InternalProvisionException:187,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].forMember(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.InternalProvisionException:189,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "com.google.inject.internal.InternalProvisionException:191,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InternalProvisionException:192,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.InternalProvisionException:197,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].getNullableProvidesOption()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].getKey()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].getParameterIndex()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProvisionException].getErrors()"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.Messages].mergeSources(java.util.List,com.google.inject.spi.Message)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 15
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalProvisionException:243"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalProvisionException:246"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
        - "mergeSources(java.util.List,com.google.inject.spi.Message)"
      - BranchSide: "com.google.inject.internal.InternalProvisionException:245"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:239,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.InternalProvisionException:242,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.InternalProvisionException:243,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.InternalProvisionException:243,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InternalProvisionException:243,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InternalProvisionException:244,1"
      Dst: "[com.google.inject.internal.Messages].mergeSources(java.util.List,com.google.inject.spi.Message)"
    - Src: "com.google.inject.internal.InternalProvisionException:244,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalProvisionException:246,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    functionSourceFile: "com.google.inject.internal.InternalProvisionException"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionDepth: 1
    returnType: "com.google.inject.ProvisionException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.InternalProvisionException].getErrors()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProvisionException:251,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].getErrors()"
    - Src: "com.google.inject.internal.InternalProvisionException:251,1"
      Dst: "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.ProvisionException"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.RegularContiguousSet:java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.util.AbstractCollection].isEmpty()"
    functionUses: 3
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.ProvisionException:40"
      Branch Sides:
      - BranchSide: "com.google.inject.ProvisionException:38"
        BranchSideFuncs:
        - "isEmpty()"
        - "getOnlyCause(java.util.Collection)"
        - "checkArgument(boolean)"
        - "initCause(java.lang.Throwable)"
      - BranchSide: "com.google.inject.ProvisionException:37"
        BranchSideFuncs:
        - "isEmpty()"
        - "<init>()"
        - "checkArgument(boolean)"
        - "copyOf(java.lang.Iterable)"
    Callsites:
    - Src: "com.google.inject.ProvisionException:38,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    - Src: "com.google.inject.ProvisionException:39,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    - Src: "com.google.inject.ProvisionException:40,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.ProvisionException:40,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - Src: "com.google.inject.ProvisionException:41,1"
      Dst: "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - Src: "com.google.inject.ProvisionException:41,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].<init>(com.google.inject.Binder,java.util.List,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:39,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].annotatedWith(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.binder.ConstantBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:44,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].annotatedWith(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.binder.ConstantBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:50,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:56,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(int)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:61,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:61,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(long)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:66,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:66,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(boolean)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:71,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:71,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(double)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].valueOf(double)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:76,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:76,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(float)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].valueOf(float)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:81,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:81,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(short)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Short].valueOf(short)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:86,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:86,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(char)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].valueOf(char)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:91,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:91,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(byte)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Byte].valueOf(byte)"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:96,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:96,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:101,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].'to'(java.lang.Enum)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].getDeclaringClass()"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:106,1"
      Dst: "[java.lang.Enum].getDeclaringClass()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:106,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].toConstant(java.lang.Class<?>,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].keyTypeIsSet()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Key].ofType(java.lang.Class)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstantBindingBuilderImpl:116"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstantBindingBuilderImpl:121"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ConstantBindingBuilderImpl:120"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstantBindingBuilderImpl:124"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstantBindingBuilderImpl:128"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ConstantBindingBuilderImpl:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:116,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].keyTypeIsSet()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:117,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:121,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:122,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:122,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:130,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:132,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:133,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:133,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstantBindingBuilderImpl:128,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.Scoping"
    - "java.util.Set"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:53,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:54,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantBindingBuilderImpl].toString()"
    functionSourceFile: "com.google.inject.internal.ConstantBindingBuilderImpl"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].bootstrap$(boolean,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 2
    argTypes:
    - "boolean"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].<init>(boolean,com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].<init>(boolean,com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].<init>(boolean,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$3(boolean,com.google.inject.TypeLiteral,com.google.inject.Binding)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$3(boolean,com.google.inject.TypeLiteral,com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$3(boolean,com.google.inject.TypeLiteral,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 247
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "boolean"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].wasBoundInKotlin(com.google.inject.Binding)"
    - "[com.google.inject.internal.MissingImplementationErrorHints].areOnlyDifferencesInVariance(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 1
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:244"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:null"
        BranchSideFuncs:
        - "areOnlyDifferencesInVariance(java.lang.reflect.Type,java.lang.reflect.Type)"
        - "wasBoundInKotlin(com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:244"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:-1"
        BranchSideFuncs:
        - "areOnlyDifferencesInVariance(java.lang.reflect.Type,java.lang.reflect.Type)"
        - "wasBoundInKotlin(com.google.inject.Binding)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:245"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:244,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].wasBoundInKotlin(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:246,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:246,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:246,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:245,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].areOnlyDifferencesInVariance(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.TypeLiteral].getType()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].areOnlyDifferencesInVariance(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].bootstrap$()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:73,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].bootstrap$()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:73,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$equals__190"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.BiFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$equals__190:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$equals__190"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$equals__190:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: 429
    functionLinenumberEnd: 433
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:430,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: 435
    functionLinenumberEnd: 441
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDependency()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:436"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:440"
        BranchSideFuncs:
        - "getBinding()"
        - "getInternalFactory()"
        - "getDependency()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:436,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:437,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:438,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDependency()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 620
    functionLinenumberEnd: 622
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDependency()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 648
    functionLinenumberEnd: 650
    functionDepth: 0
    returnType: "com.google.inject.spi.Dependency"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:649,1"
      Dst: "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 461
    functionDepth: 1
    returnType: "com.google.common.base.Optional"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Optional].absent()"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.common.base.Optional].fromNullable(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 2
    ICount: 15
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:446"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:449"
        BranchSideFuncs:
        - "absent()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:448"
        BranchSideFuncs:
        - "get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
        - "addSource(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:447,1"
      Dst: "[com.google.common.base.Optional].absent()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:456,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:458,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:460,1"
      Dst: "[com.google.common.base.Optional].fromNullable(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].dependencies()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:465,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].dependencies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].dependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 639
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 476
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    - "com.google.inject.spi.ProviderInstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.OptionalBinderBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:472"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:475"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:474"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ProviderInstanceBinding)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:473,1"
      Dst: "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.OptionalBinderBinding)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:475,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getKey()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getAlternateKeys()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOfProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:486,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:487,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:489,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOfProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:489,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:490,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:488,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getActualBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Binding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getActualBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:495,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getActualBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getActualBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getDefaultBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Binding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDefaultBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:500,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDefaultBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDefaultBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider:505,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:655"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:663"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:658"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:663"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:674"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:673"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:669"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:665"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:670"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:665"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:671"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:665"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:672"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:664"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:657,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:660,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:665,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:666,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:669,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:669,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:670,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:671,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:671,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:672,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 678
    functionLinenumberEnd: 680
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 58
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:679"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:678"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:679"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:678"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:679,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.ErrorDetail$lambda_format_0__109"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ErrorDetail$lambda_format_0__109:-1,1"
      Dst: "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].<init>()"
    functionSourceFile: "com.google.inject.spi.ErrorDetail$lambda_format_0__109"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ErrorDetail$lambda_format_0__109:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.ErrorDetail$lambda_format_0__109"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].lambda$format$0(java.lang.String)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ErrorDetail$lambda_format_0__109:-1,1"
      Dst: "[com.google.inject.spi.ErrorDetail].lambda$format$0(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 542
    functionLinenumberEnd: 544
    functionDepth: 0
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 547
    functionLinenumberEnd: 549
    functionDepth: 0
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:548"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:547"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].isFullySpecified()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:553"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:-1"
        BranchSideFuncs:
        - "isFullySpecified(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:553"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:553"
        BranchSideFuncs:
        - "isFullySpecified(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:552"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:554"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:553,1"
      Dst: "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 139
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].isFullySpecified()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].isFullySpecified()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].isFullySpecified()"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes$CompositeType].isFullySpecified()"
    functionUses: 7
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:131"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:130"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:131"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:134"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:133"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:134"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:138"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:137"
        BranchSideFuncs:
        - "canonicalize(java.lang.reflect.Type)"
        - "isFullySpecified()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:132,1"
      Dst: "[com.google.inject.internal.MoreTypes$CompositeType].isFullySpecified()"
    - Src: "com.google.inject.internal.MoreTypes:138,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionUses: 63
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:559"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:558"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:559"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:558"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:559,1"
      Dst: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 564
    functionLinenumberEnd: 566
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 42
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:565"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:564"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:565,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 569
    functionLinenumberEnd: 576
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 22
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:570"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:572"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:571"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:572"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:575"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:574"
        BranchSideFuncs:
        - "typeToString(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:571,1"
      Dst: "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes$WildcardTypeImpl:571,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorFormatter].<init>()"
    functionSourceFile: "com.google.inject.internal.ErrorFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ErrorFormatter:8,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List<Object>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.ErrorFormatter"
    linkageType: ""
    functionLinenumber: 13
    functionLinenumberEnd: 24
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.List<Object>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 5
    ICount: 26
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ErrorFormatter:14"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ErrorFormatter:23"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "com.google.inject.internal.ErrorFormatter:22"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ErrorFormatter:16"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ErrorFormatter:19"
        BranchSideFuncs:
        - "valueOf(int)"
      - BranchSide: "com.google.inject.internal.ErrorFormatter:18"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
    - Branch String: "com.google.inject.internal.ErrorFormatter:21"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ErrorFormatter:20"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "format()"
    Callsites:
    - Src: "com.google.inject.internal.ErrorFormatter:14,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.ErrorFormatter:15,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.ErrorFormatter:17,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.ErrorFormatter:17,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ErrorFormatter:21,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.ErrorFormatter:21,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ErrorFormatter].formatSources(java.util.List<Object>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.ErrorFormatter"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 33
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ErrorFormatter:27"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ErrorFormatter:32"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "format(java.lang.String,java.lang.Object[])"
        - "get(int)"
        - "format()"
      - BranchSide: "com.google.inject.internal.ErrorFormatter:31"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ErrorFormatter:30"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ErrorFormatter:27"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "format(java.lang.String,java.lang.Object[])"
        - "get(int)"
        - "format()"
    Callsites:
    - Src: "com.google.inject.internal.ErrorFormatter:27,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.ErrorFormatter:28,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.ErrorFormatter:29,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ErrorFormatter:30,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.ErrorFormatter:30,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.Stage].values()"
    functionSourceFile: "com.google.inject.Stage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Stage[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Stage:24,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Stage].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.Stage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Stage"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Stage:24,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Stage].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.Stage"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Stage:24,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Stage].$values()"
    functionSourceFile: "com.google.inject.Stage"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "com.google.inject.Stage[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.SingleMethodInjector].createMethodInvoker(java.lang.reflect.Method)"
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.SingleMethodInjector:35,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.SingleMethodInjector:36,1"
      Dst: "[com.google.inject.internal.SingleMethodInjector].createMethodInvoker(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.SingleMethodInjector:37,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.internal.SingleMethodInjector:37,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector].createMethodInvoker(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 69
    functionDepth: 3
    returnType: "com.google.inject.internal.InjectorImpl$MethodInvoker"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - "[com.google.inject.internal.BytecodeGen].fastMethod(java.lang.reflect.Method)"
    - "[com.google.inject.internal.SingleMethodInjector$1].<init>(com.google.inject.internal.SingleMethodInjector,java.util.function.BiFunction)"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Method].setAccessible(boolean)"
    - "[com.google.inject.internal.SingleMethodInjector$2].<init>(com.google.inject.internal.SingleMethodInjector,java.lang.reflect.Method)"
    functionUses: 1
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingleMethodInjector:41"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:61"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingleMethodInjector:44"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:59"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.SingleMethodInjector,java.util.function.BiFunction)"
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:58"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingleMethodInjector:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:65"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPublic(int)"
        - "getDeclaringClass()"
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:64"
        BranchSideFuncs:
        - "setAccessible(boolean)"
    - Branch String: "com.google.inject.internal.SingleMethodInjector:64"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:68"
        BranchSideFuncs:
        - "setAccessible(boolean)"
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:67"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.SingleMethodInjector,java.lang.reflect.Method)"
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector:41,1"
      Dst: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - Src: "com.google.inject.internal.SingleMethodInjector:43,1"
      Dst: "[com.google.inject.internal.BytecodeGen].fastMethod(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.SingleMethodInjector:45,1"
      Dst: "[com.google.inject.internal.SingleMethodInjector$1].<init>(com.google.inject.internal.SingleMethodInjector,java.util.function.BiFunction)"
    - Src: "com.google.inject.internal.SingleMethodInjector:62,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.SingleMethodInjector:63,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "com.google.inject.internal.SingleMethodInjector:64,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.internal.SingleMethodInjector:64,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.SingleMethodInjector:65,1"
      Dst: "[java.lang.reflect.Method].setAccessible(boolean)"
    - Src: "com.google.inject.internal.SingleMethodInjector:68,1"
      Dst: "[com.google.inject.internal.SingleMethodInjector$2].<init>(com.google.inject.internal.SingleMethodInjector,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalFlags:157"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFlags:156"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BytecodeGen].fastMethod(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionDepth: 2
    returnType: "java.util.function.BiFunction<Object,Object[],Object>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].canFastInvoke(java.lang.reflect.Executable)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$spliterator__131].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$1].apply(java.lang.Object)"
    - "[com.google.common.graph.UndirectedGraphConnections$lambda_incidentEdgeIterator_0__20].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__77].apply(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$1].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_1__122].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$2$iterator__11].apply(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].apply(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$1].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.Graphs$TransposedGraph$1$lambda_iterator_0__4].apply(java.lang.Object)"
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].apply(java.lang.Object)"
    - "[com.google.inject.internal.PackageNameCompressor$length__65].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$13].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__79].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_entrySpliterator_0__127].apply(java.lang.Object)"
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].apply(java.lang.Object)"
    - "[jdk.internal.module.ModuleLoaderMap$Mapper].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_0__7].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$11].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries$wrapEntry__103].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_2__21].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$incidentNodes__17].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet$1].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$1$stream__98].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$9$iterator__9].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$getKey__133].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$3].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_1__130].apply(java.lang.Object)"
    - "[jdk.internal.loader.Loader$lambda_moduleReaderFor_7__114].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet$1].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$1].apply(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$LowerBoundFn].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$FromIterableFunction].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ToStringFunction].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph$lambda_edgeValueMap_0__16].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleStringBuilderStrategy$1].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_1__23].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].apply(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$lambda_createColumnKeyIterator_0__24].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$getKey__99].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_1__123].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_0__137].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_0__139].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_0__138].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].apply(java.lang.Object)"
    - "[jdk.internal.loader.BuiltinClassLoader$5].apply(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$getErrorDetail__62].apply(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$getValue__132].apply(java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap$2$lambda_spliterator_0__106].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet$lambda_iterator_0__5].apply(java.lang.Object)"
    - "[jdk.internal.logger.BootstrapLogger$RedirectedLoggers].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$IdentityFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$2].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1$lambda_iterator_0__10].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$10].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransposeTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getType__80].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$getValue__125].apply(java.lang.Object)"
    - "[com.google.common.cache.AbstractLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_0__22].apply(java.lang.Object)"
    - "[com.google.common.collect.Multisets$lambda_spliteratorImpl_0__107].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].apply(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReaderFactory$1].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$3].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$lambda_computeToString_0__26].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__73].apply(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__75].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$wrapEntry__126].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$2].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$copyOf__60].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_1__8].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__81].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_2__6].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].apply(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues$getValue__104].apply(java.lang.Object)"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$1].apply(java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$init__12].apply(java.lang.Object)"
    - "[com.google.common.base.Converter].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$UpperBoundFn].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap$lambda_asMap_0__59].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen].fastClass(java.lang.reflect.Executable)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 110
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BytecodeGen:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BytecodeGen:150"
        BranchSideFuncs:
        - "signature(java.lang.reflect.Method)"
        - "apply(java.lang.Object)"
        - "fastClass(java.lang.reflect.Executable)"
      - BranchSide: "com.google.inject.internal.BytecodeGen:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:147,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].canFastInvoke(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.BytecodeGen:148,1"
      Dst: "[com.google.inject.internal.BytecodeGen].fastClass(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.BytecodeGen:148,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.BytecodeGen:148,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].fastClass(java.lang.reflect.Executable)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Executable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassValue].get(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.reflect.Executable].getDeclaringClass()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:157,1"
      Dst: "[java.lang.reflect.Executable].getDeclaringClass()"
    - Src: "com.google.inject.internal.BytecodeGen:157,1"
      Dst: "[java.lang.ClassValue].get(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector$1].<init>(com.google.inject.internal.SingleMethodInjector,java.util.function.BiFunction)"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.SingleMethodInjector"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector$1:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector$2].<init>(com.google.inject.internal.SingleMethodInjector,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector$2"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.SingleMethodInjector"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector$2:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector].getInjectionPoint()"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 95
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SingleParameterInjector].getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    - "[com.google.inject.internal.SingleMethodInjector$1].invoke(java.lang.Object,java.lang.Object[])"
    - "[com.google.inject.internal.SingleMethodInjector$2].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].errorInjectingMethod(java.lang.Throwable)"
    - "[com.google.inject.internal.InjectorImpl$MethodInvoker].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 2
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingleMethodInjector:91"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:84"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "errorInjectingMethod(java.lang.Throwable)"
        - "getCause()"
        - "addSource(java.lang.Object)"
        - "getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
      - BranchSide: "com.google.inject.internal.SingleMethodInjector:83"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "errorInjectingMethod(java.lang.Throwable)"
        - "getCause()"
        - "addSource(java.lang.Object)"
        - "getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector:84,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    - Src: "com.google.inject.internal.SingleMethodInjector:87,1"
      Dst: "[com.google.inject.internal.InjectorImpl$MethodInvoker].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.SingleMethodInjector:89,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.SingleMethodInjector:91,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getCause()"
    - Src: "com.google.inject.internal.SingleMethodInjector:92,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInjectingMethod(java.lang.Throwable)"
    - Src: "com.google.inject.internal.SingleMethodInjector:92,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleParameterInjector].getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    functionSourceFile: "com.google.inject.internal.SingleParameterInjector"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionDepth: 2
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.internal.SingleParameterInjector[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingleParameterInjector:51"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleParameterInjector:55"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SingleParameterInjector:54"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingleParameterInjector:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingleParameterInjector:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SingleParameterInjector:60,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    functionSourceFile: "com.google.inject.internal.SingleParameterInjector"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InternalContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1:com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 4
    ICount: 9
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleParameterInjector:40,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.SingleParameterInjector:42,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207].apply(int)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$generateTrampoline$3(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_generateTrampoline_3__207:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$generateTrampoline$3(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider"
    linkageType: ""
    functionLinenumber: 706
    functionLinenumberEnd: 709
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMapBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:707,1"
      Dst: "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 713
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].doInitialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 731
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.Binding].getProvider()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 1
    ICount: 34
    EdgeCount: 143
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:717"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:720"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:719"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getMapBindings()"
        - "builder()"
        - "entrySet()"
    - Branch String: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:728"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "getKeyOfProvider(com.google.inject.Key)"
        - "getValue()"
        - "next()"
        - "get(com.google.inject.Key)"
        - "put(java.lang.Object,java.lang.Object)"
        - "getProvider()"
        - "iterator()"
        - "getMapBindings()"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:727"
        BranchSideFuncs:
        - "buildOrThrow()"
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:721,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:722,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:723,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:724,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:724,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:724,1"
      Dst: "[com.google.inject.Binding].getProvider()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:724,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:725,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:725,1"
      Dst: "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:725,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:725,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:728,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - Src: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider:729,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 648
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:646,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:646,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$RealProviderMapProvider"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 735
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "com.google.inject.internal.RealOptionalBinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].skipSources(java.lang.Class[])"
    - "[com.google.inject.internal.RealOptionalBinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:57,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:58,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder:59,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].<init>(com.google.inject.Key)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:139,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.RealOptionalBinder:140,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].<init>(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].<init>(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 542
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:539,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].optionalOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Optional<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:66,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:66,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:66,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 3
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 17
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:49,1"
      Dst: "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<java.util.Optional<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:72,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:72,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:72,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Optional<jakarta.inject.Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:82,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:82,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:79,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<java.util.Optional<jakarta.inject.Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:93,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:93,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:90,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].optionalOfProvider(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Optional<Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:101,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:101,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:99,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfProvider(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<java.util.Optional<Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:110,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:110,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealOptionalBinder:108,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].providerOf(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 7
    returnType: "com.google.inject.Key<Provider<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:115,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealOptionalBinder:115,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealOptionalBinder:115,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealOptionalBinder:116,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:135,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 6
    returnType: "com.google.inject.Key<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:283,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "com.google.inject.Key$AnnotationStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.Key].computeHashCode()"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:123,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key:125,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - Src: "com.google.inject.Key:125,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.Key:126,1"
      Dst: "[com.google.inject.Key].computeHashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].setDefault()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].getKeyForDefaultBinding()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:167,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].getKeyForDefaultBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder:167,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].setBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].getKeyForActualBinding()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:183,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].getKeyForActualBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder:183,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 229
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOfProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].optionalOf(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOf(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 1
    ICount: 44
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:189,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkNotInitialized()"
    - Src: "com.google.inject.internal.RealOptionalBinder:190,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder:191,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealOptionalBinder:200,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOfProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:200,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:202,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder:202,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealOptionalBinder:203,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - Src: "com.google.inject.internal.RealOptionalBinder:206,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:208,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealOptionalBinder:214,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:214,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder:217,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:221,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].optionalOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:223,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder:226,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder:227,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 396
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:394,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:328,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:243,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].<init>(com.google.inject.internal.RealOptionalBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 689
    functionLinenumberEnd: 692
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    functionUses: 57
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder:690"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder:690"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder:689"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder:691"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder:689"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:691,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealOptionalBinder].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].hashCode()"
    functionUses: 35
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder:696,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 685
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].hashCode()"
    functionUses: 36
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:684,1"
      Dst: "[com.google.inject.Key].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$AnnotationChecker$1].<init>(com.google.inject.internal.Annotations$AnnotationChecker)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationChecker$1"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Annotations$AnnotationChecker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.CacheLoader].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:320,1"
      Dst: "[com.google.common.cache.CacheLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$AnnotationChecker$1].load(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationChecker$1"
    linkageType: ""
    functionLinenumber: 322
    functionLinenumberEnd: 329
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getAnnotations()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.common.graph.DirectedGraphConnections$2].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$1].contains(java.lang.Object)"
    - "[java.util.concurrent.SynchronousQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$SubSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].contains(java.lang.Object)"
    - "[java.util.ArrayDeque].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1].contains(java.lang.Object)"
    - "[com.google.common.graph.EdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.FilteredMultimapValues].contains(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$3].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$3].contains(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$Values].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5$1$1].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].contains(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$Values].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$Values].contains(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$1].contains(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$2].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableAsList].contains(java.lang.Object)"
    - "[java.util.LinkedList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.graph.MultiEdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].contains(java.lang.Object)"
    - "[java.util.concurrent.ArrayBlockingQueue].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.TreeMultiset].contains(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].contains(java.lang.Object)"
    - "[java.util.concurrent.PriorityBlockingQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.HashMultiset].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].contains(java.lang.Object)"
    - "[java.util.ArrayList].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Keys].contains(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5].contains(java.lang.Object)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.graph.MapIteratorCache$1].contains(java.lang.Object)"
    - "[com.google.common.collect.CartesianList].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$AccessQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.PriorityQueue].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$Values].contains(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$PermutationCollection].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].contains(java.lang.Object)"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$4].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].contains(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$Values].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Values].contains(java.lang.Object)"
    - "[com.google.common.collect.EnumMultiset].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntrySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[java.util.Collection].contains(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations$AnnotationChecker$1:323"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$AnnotationChecker$1:328"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
        - "getAnnotations()"
        - "annotationType()"
      - BranchSide: "com.google.inject.internal.Annotations$AnnotationChecker$1:327"
        BranchSideFuncs:
        - "valueOf(boolean)"
    - Branch String: "com.google.inject.internal.Annotations$AnnotationChecker$1:324"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$AnnotationChecker$1:323"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations$AnnotationChecker$1:322"
        BranchSideFuncs:
        - "getAnnotations()"
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:323,1"
      Dst: "[java.lang.Class].getAnnotations()"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:324,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:324,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:325,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations$AnnotationChecker$1].load(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationChecker$1"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations$AnnotationChecker$1].load(java.lang.Class)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationChecker$1:320,1"
      Dst: "[com.google.inject.internal.Annotations$AnnotationChecker$1].load(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:45,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:50,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.LinkedKeyBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.LinkedKeyBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.LinkedKeyBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.LinkedKeyBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:56,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.LinkedKeyBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:66,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:66,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:71,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:71,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:71,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:76,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:76,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:76,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.BindingImpl:com.google.inject.internal.Scoping$1].getSource()"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionUses: 4
    ICount: 12
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:81,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:83,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:83,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:84,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:84,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:85,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:85,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:82,1"
      Dst: "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 144
    functionDepth: 2
    returnType: "com.google.inject.Binder"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.GuiceInternal"
    - "com.google.inject.Binder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withTrustedSource(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements:139"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements:143"
        BranchSideFuncs:
        - "withTrustedSource(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Elements:142"
        BranchSideFuncs:
        - "withSource(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.Elements:138,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements:140,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].withTrustedSource(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements:143,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].withTrustedSource(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 551
    functionLinenumberEnd: 555
    functionDepth: 1
    returnType: "com.google.inject.spi.Elements$RecordingBinder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:552"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:554"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:553"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:554,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.spi.Elements$RecordingBinder"
    - "java.lang.Object"
    - "com.google.inject.internal.util.SourceProvider"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    functionUses: 3
    ICount: 46
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:249"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:248"
        BranchSideFuncs:
        - "checkArgument(boolean)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:247"
        BranchSideFuncs:
        - "<init>()"
        - "checkArgument(boolean)"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:249"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:-1"
        BranchSideFuncs:
        - "checkArgument(boolean)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:248,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:249,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:90,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:91,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:91,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:92,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:93,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:95,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.LinkedBindingImpl:100"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:106"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:105"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedBindingImpl:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedBindingImpl:103"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedBindingImpl:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:102,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:102,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:103,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:103,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedBindingImpl:104,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.LinkedBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.LinkedBindingImpl"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedBindingImpl:112,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:112,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedBindingImpl:112,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$1].<init>()"
    functionSourceFile: "com.google.inject.spi.Elements$1"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$1:82,1"
      Dst: "[com.google.inject.spi.DefaultBindingTargetVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$1].visit(com.google.inject.spi.InstanceBinding)"
    functionSourceFile: "com.google.inject.spi.Elements$1"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InstanceBindingImpl].getInstance()"
    - "[com.google.inject.spi.InstanceBinding].getInstance()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$1:85,1"
      Dst: "[com.google.inject.spi.InstanceBinding].getInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$1].visitOther(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.spi.Elements$1"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$1:90,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 285
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[java.util.ArrayDeque].<init>()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:262,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:277,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:280,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:282,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:284,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].getPermitMap()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "com.google.inject.spi.BindingSourceRestriction$PermitMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ModuleSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 48
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:300,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].pushModule(java.lang.Class,com.google.inject.spi.ModuleSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 321
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "com.google.inject.spi.ModuleSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].bootstrap$(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    - "[com.google.inject.spi.BindingSourceRestriction].getPermits(java.lang.Class)"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.common.collect.Synchronized$SynchronizedDeque].push(java.lang.Object)"
    - "[com.google.common.collect.ForwardingDeque].push(java.lang.Object)"
    - "[java.util.ArrayDeque].push(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].push(java.lang.Object)"
    - "[java.util.LinkedList].push(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 65
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:312"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:318"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:306,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getPermits(java.lang.Class)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:306,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].bootstrap$(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:307,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:308,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:308,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:311,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:312,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:314,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:315,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:317,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:319,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].bootstrap$(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].<init>(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].<init>(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].<init>(com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].popModule()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 327
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ForwardingDeque].pop()"
    - "[com.google.common.collect.Synchronized$SynchronizedDeque].pop()"
    - "[java.util.ArrayDeque].pop()"
    - "[java.util.LinkedList].pop()"
    - "[java.util.concurrent.LinkedBlockingDeque].pop()"
    - "[java.util.Deque].pop()"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:325,1"
      Dst: "[java.util.Deque].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].finish()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].isElementSourceCleared(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].getPermitMap()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:336"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:334"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:335,1"
      Dst: "[com.google.inject.spi.ModuleSource].getPermitMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ModuleSource].getPermitMap()"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "com.google.inject.spi.BindingSourceRestriction$PermitMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].lambda$pushModule$0(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:307"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:306"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction:307,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].lambda$getViolationMessage$0(java.lang.Class)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].lambda$getViolationMessage$0(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].lambda$getViolationMessage$0(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:42,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.DisableCircularProxiesOption)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.DisableCircularProxiesOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:48,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireExplicitBindingsOption)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.RequireExplicitBindingsOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:54,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireAtInjectOnConstructorsOption)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.RequireAtInjectOnConstructorsOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:60,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireExactBindingAnnotationsOption)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.RequireExactBindingAnnotationsOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:66,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorOptionsProcessor].getOptions(com.google.inject.Stage,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    functionSourceFile: "com.google.inject.internal.InjectorOptionsProcessor"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "com.google.inject.internal.InjectorImpl$InjectorOptions"
    argCount: 2
    argTypes:
    - "com.google.inject.Stage"
    - "com.google.inject.internal.InjectorImpl$InjectorOptions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].<init>(com.google.inject.Stage,boolean,boolean,boolean,boolean)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:71"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:79"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:78"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:79"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:79"
        BranchSideFuncs:
        - "<init>(com.google.inject.Stage,boolean,boolean,boolean,boolean)"
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:78"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorOptionsProcessor:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorOptionsProcessor:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:70,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:72,1"
      Dst: "[com.google.inject.internal.InjectorImpl$InjectorOptions].<init>(com.google.inject.Stage,boolean,boolean,boolean,boolean)"
    - Src: "com.google.inject.internal.InjectorOptionsProcessor:79,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[com.google.inject.internal.InjectorImpl$InjectorOptions].<init>(com.google.inject.Stage,boolean,boolean,boolean,boolean)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$InjectorOptions"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.Stage"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:87,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Returns].<init>(com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:383,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$Returns:384,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getReturnType()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:389,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.matcher.Matchers$Returns:389,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 395
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$Returns:394"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Returns:393"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$Returns:394"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Returns:393"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:394,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:399,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Returns].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: 403
    functionLinenumberEnd: 405
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:404,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Returns"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 381
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.reflect.Method)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Returns:380,1"
      Dst: "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].bootstrap$(com.google.inject.internal.DuplicateElementError)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.DuplicateElementError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].<init>(com.google.inject.internal.DuplicateElementError)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140:-1,1"
      Dst: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].<init>(com.google.inject.internal.DuplicateElementError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].<init>(com.google.inject.internal.DuplicateElementError)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.DuplicateElementError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$1(java.lang.Object)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140:-1,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$1(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$1(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].getKey()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DuplicateElementError:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:89"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.DuplicateElementError:88"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.DuplicateElementError:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:86"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:87,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.DuplicateElementError:87,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.org.objectweb.asm.Edge].<init>()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Edge"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Edge:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.RequireExactBindingAnnotationsOption"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:33,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].getSource()"
    functionSourceFile: "com.google.inject.spi.RequireExactBindingAnnotationsOption"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.RequireExactBindingAnnotationsOption"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].requireExactBindingAnnotations()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].requireExactBindingAnnotations()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:43,1"
      Dst: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].getSource()"
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:43,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:43,1"
      Dst: "[com.google.inject.Binder].requireExactBindingAnnotations()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.RequireExactBindingAnnotationsOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.RequireExactBindingAnnotationsOption)"
    - "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireExactBindingAnnotationsOption)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireExactBindingAnnotationsOption)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExactBindingAnnotationsOption:48,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireExactBindingAnnotationsOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateMapKeyError].<init>(com.google.inject.Key,com.google.common.collect.Multimap,java.util.List)"
    functionSourceFile: "com.google.inject.internal.DuplicateMapKeyError"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.common.collect.Multimap"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.internal.DuplicateMapKeyError].getDuplicateKeysMessage(com.google.inject.Key,com.google.common.collect.Multimap)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateMapKeyError:23,1"
      Dst: "[com.google.inject.internal.DuplicateMapKeyError].getDuplicateKeysMessage(com.google.inject.Key,com.google.common.collect.Multimap)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:23,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateMapKeyError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.DuplicateMapKeyError"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 51
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.EmptyImmutableListMultimap].asMap()"
    - "[com.google.common.collect.ArrayListMultimap].asMap()"
    - "[com.google.common.collect.AbstractSortedKeySortedSetMultimap].asMap()"
    - "[com.google.common.collect.TreeMultimap].asMap()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].asMap()"
    - "[com.google.common.collect.ForwardingMultimap].asMap()"
    - "[com.google.common.collect.LinkedListMultimap].asMap()"
    - "[com.google.common.collect.HashMultimap].asMap()"
    - "[com.google.common.collect.EmptyImmutableSetMultimap].asMap()"
    - "[com.google.common.collect.AbstractListMultimap].asMap()"
    - "[com.google.common.collect.LinkedHashMultimap].asMap()"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].asMap()"
    - "[com.google.common.collect.AbstractSortedSetMultimap].asMap()"
    - "[com.google.common.collect.AbstractMultimap].asMap()"
    - "[com.google.common.collect.AbstractSetMultimap].asMap()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].entrySet()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.Maps$DescendingMap].entrySet()"
    - "[com.google.common.collect.CompactHashMap].entrySet()"
    - "[com.google.common.collect.ForwardingMap].entrySet()"
    - "[com.google.common.collect.HashBiMap].entrySet()"
    - "[com.google.common.collect.EnumHashBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].entrySet()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].entrySet()"
    - "[com.google.common.collect.MutableClassToInstanceMap].entrySet()"
    - "[com.google.common.collect.AbstractBiMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].entrySet()"
    - "[com.google.common.collect.MapMakerInternalMap].entrySet()"
    - "[com.google.common.cache.LocalCache].entrySet()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].entrySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].entrySet()"
    - "[com.google.common.collect.EnumBiMap].entrySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].entrySet()"
    - "[java.util.EnumMap].entrySet()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.Double].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.common.base.Absent:com.google.common.base.CharMatcher$1:com.google.common.base.CharMatcher$BreakingWhitespace:com.google.common.base.CharMatcher$JavaDigit:com.google.common.base.CharMatcher$JavaLetter:com.google.common.base.CharMatcher$JavaLetterOrDigit:com.google.common.base.CharMatcher$JavaLowerCase:com.google.common.base.CharMatcher$JavaUpperCase:com.google.common.base.CharMatcher$NamedFastMatcher:com.google.common.base.CharMatcher$RangesMatcher:com.google.common.base.Converter$IdentityConverter:com.google.common.base.Functions$IdentityFunction:com.google.common.base.Functions$ToStringFunction:com.google.common.base.Predicates$ObjectPredicate$1:com.google.common.base.Predicates$ObjectPredicate$2:com.google.common.base.Predicates$ObjectPredicate$3:com.google.common.base.Predicates$ObjectPredicate$4:com.google.common.base.Suppliers$SupplierFunctionImpl:com.google.common.cache.LocalCache$WriteThroughEntry:com.google.common.collect.AllEqualOrdering:com.google.common.collect.CompactHashMap$MapEntry:com.google.common.collect.Cut$AboveAll:com.google.common.collect.Cut$BelowAll:com.google.common.collect.DiscreteDomain$BigIntegerDomain:com.google.common.collect.DiscreteDomain$IntegerDomain:com.google.common.collect.DiscreteDomain$LongDomain:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.HashBiMap$1$MapEntry:com.google.common.collect.HashBiMap$Inverse$1$InverseEntry:com.google.common.collect.ImmutableEntry:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.Iterables$8:com.google.common.collect.Iterators$8:com.google.common.collect.LinkedListMultimap$Node:com.google.common.collect.MapMakerInternalMap$WriteThroughEntry:com.google.common.collect.NaturalOrdering:com.google.common.collect.Ordering$ArbitraryOrdering:com.google.common.collect.ReverseNaturalOrdering:com.google.common.collect.TreeRangeMap$RangeMapEntry:com.google.common.collect.UsingToStringOrdering:com.google.common.hash.ChecksumHashFunction:com.google.common.hash.Crc32cHashFunction:com.google.common.hash.FarmHashFingerprint64:com.google.common.hash.Fingerprint2011:com.google.common.hash.Funnels$ByteArrayFunnel:com.google.common.hash.Funnels$IntegerFunnel:com.google.common.hash.Funnels$LongFunnel:com.google.common.hash.Funnels$UnencodedCharsFunnel:com.google.common.hash.MacHashFunction:com.google.common.hash.MessageDigestHashFunction:com.google.common.io.BaseEncoding$Alphabet:com.google.common.io.ByteSource$EmptyByteSource:com.google.common.io.ByteStreams$1:com.google.common.io.CharSource$EmptyCharSource:com.google.common.io.CharStreams$NullWriter:com.google.common.io.Files$FilePredicate$1:com.google.common.io.Files$FilePredicate$2:com.google.common.math.LinearTransformation$NaNLinearTransformation:com.google.common.net.HostSpecifier:com.google.common.net.InternetDomainName:com.google.common.primitives.Booleans$BooleanComparator:com.google.common.primitives.Booleans$LexicographicalComparator:com.google.common.primitives.Chars$LexicographicalComparator:com.google.common.primitives.Doubles$DoubleConverter:com.google.common.primitives.Doubles$LexicographicalComparator:com.google.common.primitives.Floats$FloatConverter:com.google.common.primitives.Floats$LexicographicalComparator:com.google.common.primitives.Ints$IntConverter:com.google.common.primitives.Ints$LexicographicalComparator:com.google.common.primitives.Longs$LexicographicalComparator:com.google.common.primitives.Longs$LongConverter:com.google.common.primitives.Shorts$LexicographicalComparator:com.google.common.primitives.Shorts$ShortConverter:com.google.common.primitives.SignedBytes$LexicographicalComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator:com.google.common.primitives.UnsignedInts$LexicographicalComparator:com.google.common.primitives.UnsignedLongs$LexicographicalComparator:com.google.common.reflect.ClassPath$ClassInfo:com.google.common.reflect.ClassPath$ResourceInfo:com.google.common.reflect.TypeParameter:com.google.common.reflect.TypeResolver$TypeVariableKey:com.google.common.reflect.Types$TypeVariableImpl:com.google.common.util.concurrent.AbstractExecutionThreadService$1:com.google.common.util.concurrent.AbstractIdleService$DelegateService:com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate:com.google.common.util.concurrent.AbstractService$1:com.google.common.util.concurrent.AbstractService$2:com.google.common.util.concurrent.ClosingFuture$2:com.google.common.util.concurrent.ClosingFuture$3:com.google.common.util.concurrent.ClosingFuture$4:com.google.common.util.concurrent.ClosingFuture$7:com.google.common.util.concurrent.ClosingFuture$Combiner2$1:com.google.common.util.concurrent.ClosingFuture$Combiner2$2:com.google.common.util.concurrent.ClosingFuture$Combiner3$1:com.google.common.util.concurrent.ClosingFuture$Combiner3$2:com.google.common.util.concurrent.ClosingFuture$Combiner4$1:com.google.common.util.concurrent.ClosingFuture$Combiner4$2:com.google.common.util.concurrent.ClosingFuture$Combiner5$1:com.google.common.util.concurrent.ClosingFuture$Combiner5$2:com.google.common.util.concurrent.DirectExecutor:com.google.common.util.concurrent.ServiceManager$1:com.google.common.util.concurrent.ServiceManager$2:com.google.inject.Key:com.google.inject.Key$NullAnnotationStrategy:com.google.inject.Scopes$1:com.google.inject.internal.ConstantBindingBuilderImpl:com.google.inject.internal.ExposureBuilder:com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.MembersInjectorImpl:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.Scoping$5:com.google.inject.internal.SingletonScope:com.google.inject.internal.TypeConverterBindingProcessor$1:com.google.inject.internal.TypeConverterBindingProcessor$2:com.google.inject.internal.TypeConverterBindingProcessor$3:com.google.inject.internal.TypeConverterBindingProcessor$4:com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:com.google.inject.matcher.Matchers$AndMatcher:com.google.inject.matcher.Matchers$AnnotatedWith:com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo:com.google.inject.matcher.Matchers$InSubpackage:com.google.inject.matcher.Matchers$Not:com.google.inject.matcher.Matchers$Only:com.google.inject.matcher.Matchers$OrMatcher:com.google.inject.matcher.Matchers$Returns:com.google.inject.spi.Elements$RecordingBinder:com.google.inject.spi.MembersInjectorLookup$1:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.text.AttributedCharacterIterator$Attribute:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.SynchronousQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.lang.model.element.Modifier:javax.security.auth.Subject:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(java.util.List,java.util.Formatter)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.common.collect.Multimap].asMap()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Collection].iterator()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 52
    EdgeCount: 797
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DuplicateMapKeyError:32"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:48"
        BranchSideFuncs:
        - "hasNext()"
        - "redBold(java.lang.String)"
        - "toString()"
        - "getValue()"
        - "next()"
        - "asMap()"
        - "iterator()"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:47"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "bold(java.lang.String)"
        - "formatSources(java.util.List,java.util.Formatter)"
        - "getSources()"
    - Branch String: "com.google.inject.internal.DuplicateMapKeyError:36"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:45"
        BranchSideFuncs:
        - "hasNext()"
        - "getSource()"
        - "getValue()"
        - "next()"
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "iterator()"
        - "valueOf(int)"
        - "format()"
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateMapKeyError:30,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:30,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:32,1"
      Dst: "[com.google.common.collect.Multimap].asMap()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:32,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:32,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:32,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:32,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:33,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:33,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:33,1"
      Dst: "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:36,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:36,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:37,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:39,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:39,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:43,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:49,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:49,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:306,1"
      Dst: "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateMapKeyError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.DuplicateMapKeyError"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "com.google.inject.internal.DuplicateMapKeyError<K,V>"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateMapKeyError].<init>(com.google.inject.Key,com.google.common.collect.Multimap,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateMapKeyError:54,1"
      Dst: "[com.google.inject.internal.DuplicateMapKeyError].<init>(com.google.inject.Key,com.google.common.collect.Multimap,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateMapKeyError].getDuplicateKeysMessage(com.google.inject.Key<Map<K,V>>,com.google.common.collect.Multimap<K,Binding<V>>)"
    functionSourceFile: "com.google.inject.internal.DuplicateMapKeyError"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 68
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<Map<K,V>>"
    - "com.google.common.collect.Multimap<K,Binding<V>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractSortedKeySortedSetMultimap].keySet()"
    - "[com.google.common.collect.AbstractMultimap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].keySet()"
    - "[com.google.common.collect.HashMultimap].keySet()"
    - "[com.google.common.collect.ArrayListMultimap].keySet()"
    - "[com.google.common.collect.TreeMultimap].keySet()"
    - "[com.google.common.collect.LinkedHashMultimap].keySet()"
    - "[com.google.common.collect.ImmutableMultimap].keySet()"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].keySet()"
    - "[com.google.common.collect.ForwardingMultimap].keySet()"
    - "[com.google.common.collect.LinkedListMultimap].keySet()"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.Double].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.base.Absent:com.google.common.base.CharMatcher$1:com.google.common.base.CharMatcher$BreakingWhitespace:com.google.common.base.CharMatcher$JavaDigit:com.google.common.base.CharMatcher$JavaLetter:com.google.common.base.CharMatcher$JavaLetterOrDigit:com.google.common.base.CharMatcher$JavaLowerCase:com.google.common.base.CharMatcher$JavaUpperCase:com.google.common.base.CharMatcher$NamedFastMatcher:com.google.common.base.CharMatcher$RangesMatcher:com.google.common.base.Converter$IdentityConverter:com.google.common.base.Functions$IdentityFunction:com.google.common.base.Functions$ToStringFunction:com.google.common.base.Predicates$ObjectPredicate$1:com.google.common.base.Predicates$ObjectPredicate$2:com.google.common.base.Predicates$ObjectPredicate$3:com.google.common.base.Predicates$ObjectPredicate$4:com.google.common.base.Suppliers$SupplierFunctionImpl:com.google.common.collect.AllEqualOrdering:com.google.common.collect.Cut$AboveAll:com.google.common.collect.Cut$BelowAll:com.google.common.collect.DiscreteDomain$BigIntegerDomain:com.google.common.collect.DiscreteDomain$IntegerDomain:com.google.common.collect.DiscreteDomain$LongDomain:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.ImmutableSet$CachingAsList:com.google.common.collect.Iterables$8:com.google.common.collect.Iterators$8:com.google.common.collect.LinkedHashMultimap$ValueSet:com.google.common.collect.NaturalOrdering:com.google.common.collect.Ordering$ArbitraryOrdering:com.google.common.collect.RegularImmutableSet:com.google.common.collect.ReverseNaturalOrdering:com.google.common.collect.Sets$5$1$1:com.google.common.collect.SingletonImmutableSet:com.google.common.collect.UsingToStringOrdering:com.google.common.hash.ChecksumHashFunction:com.google.common.hash.Crc32cHashFunction:com.google.common.hash.FarmHashFingerprint64:com.google.common.hash.Fingerprint2011:com.google.common.hash.Funnels$ByteArrayFunnel:com.google.common.hash.Funnels$IntegerFunnel:com.google.common.hash.Funnels$LongFunnel:com.google.common.hash.Funnels$UnencodedCharsFunnel:com.google.common.hash.MacHashFunction:com.google.common.hash.MessageDigestHashFunction:com.google.common.io.BaseEncoding$Alphabet:com.google.common.io.ByteSource$EmptyByteSource:com.google.common.io.ByteStreams$1:com.google.common.io.CharSource$EmptyCharSource:com.google.common.io.CharStreams$NullWriter:com.google.common.io.Files$FilePredicate$1:com.google.common.io.Files$FilePredicate$2:com.google.common.math.LinearTransformation$NaNLinearTransformation:com.google.common.net.HostSpecifier:com.google.common.net.InternetDomainName:com.google.common.primitives.Booleans$BooleanComparator:com.google.common.primitives.Booleans$LexicographicalComparator:com.google.common.primitives.Chars$LexicographicalComparator:com.google.common.primitives.Doubles$DoubleConverter:com.google.common.primitives.Doubles$LexicographicalComparator:com.google.common.primitives.Floats$FloatConverter:com.google.common.primitives.Floats$LexicographicalComparator:com.google.common.primitives.Ints$IntConverter:com.google.common.primitives.Ints$LexicographicalComparator:com.google.common.primitives.Longs$LexicographicalComparator:com.google.common.primitives.Longs$LongConverter:com.google.common.primitives.Shorts$LexicographicalComparator:com.google.common.primitives.Shorts$ShortConverter:com.google.common.primitives.SignedBytes$LexicographicalComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator:com.google.common.primitives.UnsignedInts$LexicographicalComparator:com.google.common.primitives.UnsignedLongs$LexicographicalComparator:com.google.common.reflect.ClassPath$ClassInfo:com.google.common.reflect.ClassPath$ResourceInfo:com.google.common.reflect.TypeParameter:com.google.common.reflect.TypeResolver$TypeVariableKey:com.google.common.reflect.Types$TypeVariableImpl:com.google.common.util.concurrent.AbstractExecutionThreadService$1:com.google.common.util.concurrent.AbstractIdleService$DelegateService:com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate:com.google.common.util.concurrent.AbstractService$1:com.google.common.util.concurrent.AbstractService$2:com.google.common.util.concurrent.ClosingFuture$2:com.google.common.util.concurrent.ClosingFuture$3:com.google.common.util.concurrent.ClosingFuture$4:com.google.common.util.concurrent.ClosingFuture$7:com.google.common.util.concurrent.ClosingFuture$Combiner2$1:com.google.common.util.concurrent.ClosingFuture$Combiner2$2:com.google.common.util.concurrent.ClosingFuture$Combiner3$1:com.google.common.util.concurrent.ClosingFuture$Combiner3$2:com.google.common.util.concurrent.ClosingFuture$Combiner4$1:com.google.common.util.concurrent.ClosingFuture$Combiner4$2:com.google.common.util.concurrent.ClosingFuture$Combiner5$1:com.google.common.util.concurrent.ClosingFuture$Combiner5$2:com.google.common.util.concurrent.DirectExecutor:com.google.common.util.concurrent.ServiceManager$1:com.google.common.util.concurrent.ServiceManager$2:com.google.inject.Key:com.google.inject.Key$NullAnnotationStrategy:com.google.inject.Scopes$1:com.google.inject.internal.ConstantBindingBuilderImpl:com.google.inject.internal.ExposureBuilder:com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.MembersInjectorImpl:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.Scoping$5:com.google.inject.internal.SingletonScope:com.google.inject.internal.TypeConverterBindingProcessor$1:com.google.inject.internal.TypeConverterBindingProcessor$2:com.google.inject.internal.TypeConverterBindingProcessor$3:com.google.inject.internal.TypeConverterBindingProcessor$4:com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:com.google.inject.matcher.Matchers$AndMatcher:com.google.inject.matcher.Matchers$AnnotatedWith:com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo:com.google.inject.matcher.Matchers$InSubpackage:com.google.inject.matcher.Matchers$Not:com.google.inject.matcher.Matchers$Only:com.google.inject.matcher.Matchers$OrMatcher:com.google.inject.matcher.Matchers$Returns:com.google.inject.spi.Elements$RecordingBinder:com.google.inject.spi.MembersInjectorLookup$1:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider:java.io.BufferedReader$1:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.text.AttributedCharacterIterator$Attribute:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.Formatter:java.util.HashMap$Node:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.SynchronousQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.lang.model.element.Modifier:javax.security.auth.Subject:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.common.collect.AbstractTable$CellSet].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].size()"
    - "[com.google.common.graph.MapIteratorCache$1].size()"
    - "[com.google.common.collect.Maps$EntrySet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].size()"
    - "[com.google.common.collect.Sets$4].size()"
    - "[com.google.common.graph.DirectedGraphConnections$2].size()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.graph.UndirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].size()"
    - "[com.google.common.collect.CompactHashSet].size()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].size()"
    - "[com.google.common.graph.AbstractNetwork$1$1].size()"
    - "[com.google.common.collect.Maps$KeySet].size()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.Sets$2].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].size()"
    - "[com.google.common.graph.DirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].size()"
    - "[com.google.common.collect.Collections2$FilteredCollection].size()"
    - "[com.google.common.collect.Sets$SubSet].size()"
    - "[com.google.common.graph.EdgesConnecting].size()"
    - "[com.google.common.collect.Multisets$ElementSet].size()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.graph.DirectedGraphConnections$1].size()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].size()"
    - "[com.google.common.collect.Multimaps$Entries].size()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].size()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].size()"
    - "[com.google.common.collect.Sets$PowerSet].size()"
    - "[com.google.common.collect.Sets$5].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.Sets$3].size()"
    - "[com.google.common.graph.AbstractBaseGraph$1].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.graph.IncidentEdgeSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$3].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].size()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.collect.Sets$1].size()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.common.collect.Multimap].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 867
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DuplicateMapKeyError:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:65"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.DuplicateMapKeyError:64"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.DuplicateMapKeyError:59,1"
      Dst: "[com.google.common.collect.Multimap].keySet()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:60,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:60,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:61,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:62,1"
      Dst: "[java.util.Set].size()"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:63,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.DuplicateMapKeyError:67,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$1].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$1"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:110,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$1].visitOther(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$1"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 17
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:114,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$1].visit(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$1"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.Binding)"
    - "[java.util.Optional].isPresent()"
    - "[java.util.Optional].get()"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction$1:120"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$1:123"
        BranchSideFuncs:
        - "of(java.lang.Object)"
        - "get()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$1:122"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:119,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.Binding)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:120,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:121,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:121,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:123,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$1].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$1"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].check(java.util.List)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[com.google.inject.spi.PrivateElements].getElements()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:128,1"
      Dst: "[com.google.inject.spi.PrivateElements].getElements()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$1:128,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].check(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Element$Type].values()"
    functionSourceFile: "com.google.inject.internal.Element$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Element$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Element$Type:35,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Element$Type].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Element$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Element$Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Element$Type:35,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Element$Type].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.Element$Type"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Element$Type:35,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Element$Type].$values()"
    functionSourceFile: "com.google.inject.internal.Element$Type"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "com.google.inject.internal.Element$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$DisableCircularProxiesModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$DisableCircularProxiesModule"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].disableCircularProxies()"
    - "[com.google.inject.Binder].disableCircularProxies()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$DisableCircularProxiesModule:481,1"
      Dst: "[com.google.inject.Binder].disableCircularProxies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].<init>()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].isInjectableConstructor(java.lang.reflect.Constructor)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$isInjectableConstructor__117:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isInjectableConstructor(java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.matcher.Matchers].checkForRuntimeRetention(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:115,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:116,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:117,1"
      Dst: "[com.google.inject.matcher.Matchers].checkForRuntimeRetention(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.reflect.AnnotatedElement)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.AnnotatedElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].isAnnotationPresent(java.lang.Class)"
    - "[com.google.common.reflect.Parameter].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.Package:java.lang.reflect.AccessibleObject:java.lang.reflect.AnnotatedElement].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.reflect.AnnotatedElement].isAnnotationPresent(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:122,1"
      Dst: "[java.lang.reflect.AnnotatedElement].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWithType:127"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWithType:127"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWithType:126"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWithType:128"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWithType:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:128,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:133,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:138,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:138,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWithType"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.reflect.AnnotatedElement)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWithType:111,1"
      Dst: "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.reflect.AnnotatedElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "com.google.inject.internal.ConstructionProxy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - "[com.google.inject.internal.BytecodeGen].fastConstructor(java.lang.reflect.Constructor)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor,java.util.function.BiFunction)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor)"
    functionUses: 3
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DefaultConstructionProxyFactory:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory:59"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor)"
    - Branch String: "com.google.inject.internal.DefaultConstructionProxyFactory:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory:57"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor,java.util.function.BiFunction)"
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:46,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:48,1"
      Dst: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:51,1"
      Dst: "[com.google.inject.internal.BytecodeGen].fastConstructor(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:53,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor,java.util.function.BiFunction)"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory:60,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor,java.util.function.BiFunction)"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "java.lang.reflect.Constructor"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy:72,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].<init>(com.google.inject.spi.InjectionPoint,java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[java.lang.reflect.Constructor].setAccessible(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:111"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPublic(int)"
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:110"
        BranchSideFuncs:
        - "setAccessible(boolean)"
    - Branch String: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:110"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:113"
        BranchSideFuncs:
        - "setAccessible(boolean)"
      - BranchSide: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:108,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:109,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:109,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:109,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:110,1"
      Dst: "[java.lang.reflect.Constructor].getModifiers()"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:111,1"
      Dst: "[java.lang.reflect.Constructor].setAccessible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.RestrictedBindingSource$RestrictionLevel].values()"
    functionSourceFile: "com.google.inject.RestrictedBindingSource$RestrictionLevel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.RestrictedBindingSource$RestrictionLevel[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.RestrictedBindingSource$RestrictionLevel:115,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.RestrictedBindingSource$RestrictionLevel].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.RestrictedBindingSource$RestrictionLevel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.RestrictedBindingSource$RestrictionLevel"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.RestrictedBindingSource$RestrictionLevel:115,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.RestrictedBindingSource$RestrictionLevel].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.RestrictedBindingSource$RestrictionLevel"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.RestrictedBindingSource$RestrictionLevel:115,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.RestrictedBindingSource$RestrictionLevel].$values()"
    functionSourceFile: "com.google.inject.RestrictedBindingSource$RestrictionLevel"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "com.google.inject.RestrictedBindingSource$RestrictionLevel[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$5].<init>()"
    functionSourceFile: "com.google.inject.internal.Scoping$5"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$5:140,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$5].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$5"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$2].visitEagerSingleton()"
    - "[com.google.inject.Scopes$3].visitEagerSingleton()"
    - "[com.google.inject.internal.Indexer].visitEagerSingleton()"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitEagerSingleton()"
    - "[com.google.inject.spi.BindingScopingVisitor].visitEagerSingleton()"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$5:143,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitEagerSingleton()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$5].getScopeInstance()"
    functionSourceFile: "com.google.inject.internal.Scoping$5"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$5].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$5"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$5"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].asEagerSingleton()"
    - "[com.google.inject.binder.ScopedBindingBuilder].asEagerSingleton()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$5:158,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].asEagerSingleton()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorBindingProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InterceptorBindingProcessor"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:30,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorBindingProcessor].visit(com.google.inject.spi.InterceptorBinding)"
    functionSourceFile: "com.google.inject.internal.InterceptorBindingProcessor"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionDepth: 11
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InterceptorBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - "[com.google.inject.internal.InjectorBindingData].addInterceptorBinding(com.google.inject.spi.InterceptorBinding)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.Errors].aopDisabled(com.google.inject.spi.InterceptorBinding)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InterceptorBindingProcessor:35"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorBindingProcessor:38"
        BranchSideFuncs:
        - "addInterceptorBinding(com.google.inject.spi.InterceptorBinding)"
        - "getBindingData()"
      - BranchSide: "com.google.inject.internal.InterceptorBindingProcessor:37"
        BranchSideFuncs:
        - "aopDisabled(com.google.inject.spi.InterceptorBinding)"
    Callsites:
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:35,1"
      Dst: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:36,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:36,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addInterceptorBinding(com.google.inject.spi.InterceptorBinding)"
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:38,1"
      Dst: "[com.google.inject.internal.Errors].aopDisabled(com.google.inject.spi.InterceptorBinding)"
    - Src: "com.google.inject.internal.InterceptorBindingProcessor:41,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorBindingData].addInterceptorBinding(com.google.inject.spi.InterceptorBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InterceptorBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:177,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].aopDisabled(com.google.inject.spi.InterceptorBinding)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InterceptorBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.InterceptorBinding].getSource()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:138,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].getSource()"
    - Src: "com.google.inject.internal.Errors:134,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].bootstrap$(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.aop.EnhancerBuilderImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].<init>(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197:-1,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].<init>(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].<init>(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.aop.EnhancerBuilderImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl].doBuildEnhancer(java.util.BitSet)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197:-1,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl].doBuildEnhancer(java.util.BitSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl].doBuildEnhancer(java.util.BitSet)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionDepth: 2
    returnType: "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    argCount: 1
    argTypes:
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].bootstrap$(java.util.NavigableMap)"
    - "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - "[java.util.BitSet].nextSetBit(int)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[com.google.inject.internal.aop.Enhancer].<init>(java.lang.Class,java.util.Map)"
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].glue(java.util.NavigableMap)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.EnhancerBuilderImpl:101"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.EnhancerBuilderImpl:106"
        BranchSideFuncs:
        - "<init>(java.lang.Class,java.util.Map)"
        - "glue(java.util.NavigableMap)"
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:93,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:96,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:97,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].hasPackageAccess()"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:97,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].bootstrap$(java.util.NavigableMap)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:95,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].visitMembers(java.lang.reflect.Executable[],boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:100,1"
      Dst: "[java.util.BitSet].nextSetBit(int)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:104,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:104,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:107,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].<init>(java.lang.Class,java.util.Map)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:107,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].glue(java.util.NavigableMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].bootstrap$(java.util.NavigableMap)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.NavigableMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].<init>(java.util.NavigableMap)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198:-1,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].<init>(java.util.NavigableMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].<init>(java.util.NavigableMap)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.NavigableMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer].<init>(java.lang.Class,java.util.Map)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].<init>(java.lang.Class,java.lang.String)"
    - "[com.google.inject.internal.aop.ClassDefining].canDowncastToProxy(java.lang.Class)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:171"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:167"
        BranchSideFuncs:
        - "canDowncastToProxy(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:166"
        BranchSideFuncs:
        - "canDowncastToProxy(java.lang.Class)"
        - "<init>(java.lang.Class,java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:167,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].<init>(java.lang.Class,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:171,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].canDowncastToProxy(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InjectorBindingData,com.google.inject.internal.InjectorJitBindingData,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 1095
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.InjectorBindingData"
    - "com.google.inject.internal.InjectorJitBindingData"
    - "com.google.inject.internal.InjectorImpl$InjectorOptions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeferredLookups].<init>(com.google.inject.internal.InjectorImpl)"
    - "[com.google.common.collect.Sets].newConcurrentHashSet()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.ThreadLocal].<init>()"
    - "[com.google.inject.internal.ConstructorInjectorStore].<init>(com.google.inject.internal.InjectorImpl)"
    functionUses: 1
    ICount: 26
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:143"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:142"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:131,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:122,1"
      Dst: "[com.google.inject.internal.DeferredLookups].<init>(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorImpl:125,1"
      Dst: "[com.google.common.collect.Sets].newConcurrentHashSet()"
    - Src: "com.google.inject.internal.InjectorImpl:1094,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore].<init>(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorImpl:143,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].findBindingsByType(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 1
    returnType: "java.util.List<Binding<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].get(java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].getIndexedExplicitBindings()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[com.google.common.collect.ListMultimap].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:152,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getIndexedExplicitBindings()"
    - Src: "com.google.inject.internal.InjectorImpl:152,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:152,1"
      Dst: "[com.google.common.collect.ListMultimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:153,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getIndexedExplicitBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "com.google.common.collect.ListMultimap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 169
    functionDepth: 8
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 4
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:159,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:159,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:161,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:162,1"
      Dst: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - Src: "com.google.inject.internal.InjectorImpl:166,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.InjectorImpl:166,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:166,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.InjectorImpl:166,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:114,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionDepth: 7
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.InjectorImpl$JitLimitation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].getJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:220"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:225"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:224"
        BranchSideFuncs:
        - "getJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:219,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:225,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 304
    functionDepth: 6
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.InjectorImpl$JitLimitation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].isMembersInjector(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].isTypeLiteral(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].jitDisabled(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.internal.InjectorJitBindingData].isFailedJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionUses: 1
    ICount: 52
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:264"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "lock()"
        - "isTypeLiteral(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:263"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "isTypeLiteral(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:264"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "lock()"
        - "isTypeLiteral(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:263"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "isTypeLiteral(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:264"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "lock()"
        - "isTypeLiteral(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:263"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "isTypeLiteral(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:267"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:299"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:298"
        BranchSideFuncs:
        - "hasErrors()"
        - "isFailedJitBinding(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:271"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:264"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:263"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "lock()"
        - "isTypeLiteral(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:274"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:280"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:279"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:274"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:280"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:279"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:274"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:280"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:279"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:274"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:280"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
        - "isProvider(com.google.inject.Key)"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "jitDisabled(com.google.inject.Key)"
        - "toException()"
        - "lock()"
        - "hasErrors()"
        - "isTypeLiteral(com.google.inject.Key)"
        - "isFailedJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:279"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:299"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:302"
        BranchSideFuncs:
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:301"
        BranchSideFuncs:
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Branch String: "com.google.inject.internal.InjectorImpl:299"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:302"
        BranchSideFuncs:
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:301"
        BranchSideFuncs:
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:264,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:264,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isTypeLiteral(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:264,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isMembersInjector(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:265,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - Src: "com.google.inject.internal.InjectorImpl:269,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:278,1"
      Dst: "[com.google.inject.internal.Errors].jitDisabled(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:278,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:299,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].isFailedJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:299,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.internal.InjectorImpl:302,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 20
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].toException()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 653
    functionDepth: 1
    returnType: "com.google.inject.internal.ErrorsException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ErrorsException].<init>(com.google.inject.internal.Errors)"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:652,1"
      Dst: "[com.google.inject.internal.ErrorsException].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorsException].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ErrorsException"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ErrorsException:32,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].hasErrors()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 655
    functionLinenumberEnd: 657
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:656"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:655"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 871
    functionLinenumberEnd: 906
    functionDepth: 5
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 4
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.internal.Errors"
    - "boolean"
    - "com.google.inject.internal.InjectorImpl$JitLimitation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].jitDisabledInParent(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.InjectorImpl].createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.InjectorJitBindingData].getSourcesForBannedKey(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorJitBindingData].isBannedKey(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].createJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.InjectorJitBindingData].banKeyInParent(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.InjectorJitBindingData].putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    functionUses: 2
    ICount: 47
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:872"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:896"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:895"
        BranchSideFuncs:
        - "isBannedKey(com.google.inject.Key)"
        - "getSourcesForBannedKey(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:873"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:880"
        BranchSideFuncs:
        - "<init>()"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Branch String: "com.google.inject.internal.InjectorImpl:873"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:880"
        BranchSideFuncs:
        - "<init>()"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Branch String: "com.google.inject.internal.InjectorImpl:873"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:880"
        BranchSideFuncs:
        - "<init>()"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Branch String: "com.google.inject.internal.InjectorImpl:885"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:880"
        BranchSideFuncs:
        - "<init>()"
        - "createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Branch String: "com.google.inject.internal.InjectorImpl:897"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:901"
        BranchSideFuncs:
        - "childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:900"
        BranchSideFuncs:
        - "getSource()"
        - "banKeyInParent(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
        - "createJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
        - "putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
        - "canonicalizeKey(com.google.inject.Key)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:877,1"
      Dst: "[com.google.inject.internal.Errors].jitDisabledInParent(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:877,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:881,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:881,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createJustInTimeBindingRecursive(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:896,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getSourcesForBannedKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:897,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].isBannedKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:898,1"
      Dst: "[com.google.inject.internal.Errors].childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
    - Src: "com.google.inject.internal.InjectorImpl:901,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:902,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:903,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InjectorImpl:903,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].banKeyInParent(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:904,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Errors].<init>()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createJustInTimeBinding(com.google.inject.Key,com.google.inject.internal.Errors,boolean,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 924
    functionLinenumberEnd: 992
    functionDepth: 4
    returnType: "com.google.inject.internal.BindingImpl"
    argCount: 4
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.internal.Errors"
    - "boolean"
    - "com.google.inject.internal.InjectorImpl$JitLimitation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.internal.InjectorJitBindingData].getSourcesForBannedKey(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorJitBindingData].isBannedKey(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].createSyntheticProviderBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].isMembersInjector(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].createMembersInjectorBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].convertConstantStringBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].isTypeLiteral(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].jitDisabled(com.google.inject.Key)"
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.inject.Key].hasAttributes()"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.Key].withoutAttributes()"
    - "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].bootstrap$(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.internal.InjectorImpl].initializeJitBinding(com.google.inject.internal.BindingImpl,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 58
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:932"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:937"
        BranchSideFuncs:
        - "childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:936"
        BranchSideFuncs:
        - "isProvider(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:937"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:945"
        BranchSideFuncs:
        - "isMembersInjector(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:946"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:954"
        BranchSideFuncs:
        - "convertConstantStringBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Branch String: "com.google.inject.internal.InjectorImpl:956"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:960"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:959"
        BranchSideFuncs:
        - "isTypeLiteral(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:960"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:965"
        BranchSideFuncs:
        - "jitDisabled(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:964"
        BranchSideFuncs:
        - "getAnnotationType()"
    - Branch String: "com.google.inject.internal.InjectorImpl:960"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:965"
        BranchSideFuncs:
        - "jitDisabled(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:964"
        BranchSideFuncs:
        - "getAnnotationType()"
    - Branch String: "com.google.inject.internal.InjectorImpl:960"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:965"
        BranchSideFuncs:
        - "jitDisabled(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:964"
        BranchSideFuncs:
        - "getAnnotationType()"
    - Branch String: "com.google.inject.internal.InjectorImpl:965"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:977"
        BranchSideFuncs:
        - "throwIfNewErrors(int)"
        - "bootstrap$(com.google.inject.internal.Errors)"
        - "getTypeLiteral()"
        - "initializeJitBinding(com.google.inject.internal.BindingImpl,com.google.inject.internal.Errors)"
        - "getRawType()"
        - "createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
    - Branch String: "com.google.inject.internal.InjectorImpl:967"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:974"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
    - Branch String: "com.google.inject.internal.InjectorImpl:967"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:974"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:925,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.InjectorImpl:931,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getSourcesForBannedKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:932,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].isBannedKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:933,1"
      Dst: "[com.google.inject.internal.Errors].childBindingAlreadySet(com.google.inject.Key,java.util.Set)"
    - Src: "com.google.inject.internal.InjectorImpl:933,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:937,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:941,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createSyntheticProviderBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:946,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isMembersInjector(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:950,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createMembersInjectorBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:955,1"
      Dst: "[com.google.inject.internal.InjectorImpl].convertConstantStringBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:960,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isTypeLiteral(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:961,1"
      Dst: "[com.google.inject.internal.Errors].jitDisabled(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:965,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.InjectorImpl:967,1"
      Dst: "[com.google.inject.Key].hasAttributes()"
    - Src: "com.google.inject.internal.InjectorImpl:969,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:970,1"
      Dst: "[com.google.inject.Key].withoutAttributes()"
    - Src: "com.google.inject.internal.InjectorImpl:970,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:975,1"
      Dst: "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - Src: "com.google.inject.internal.InjectorImpl:978,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:978,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:981,1"
      Dst: "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].bootstrap$(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:982,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.InjectorImpl:989,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.InjectorImpl:990,1"
      Dst: "[com.google.inject.internal.InjectorImpl].initializeJitBinding(com.google.inject.internal.BindingImpl,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 19
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Errors].size()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 699
    functionLinenumberEnd: 701
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[java.util.List].size()"
    functionUses: 8
    ICount: 10
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:700"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:699"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "com.google.inject.internal.Errors:700,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Key].hasAttributes()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationInstanceStrategy].hasAttributes()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].hasAttributes()"
    - "[com.google.inject.Key$NullAnnotationStrategy].hasAttributes()"
    - "[com.google.inject.Key$AnnotationStrategy].hasAttributes()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:325,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].hasAttributes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].withoutAttributes()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionDepth: 3
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].withoutAttributes()"
    - "[com.google.inject.Key$NullAnnotationStrategy].withoutAttributes()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].withoutAttributes()"
    - "[com.google.inject.Key$AnnotationStrategy].withoutAttributes()"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:334,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].withoutAttributes()"
    - Src: "com.google.inject.Key:334,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].bootstrap$(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159:-1,1"
      Dst: "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 649
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.internal.Errors].toException()"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:644"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:648"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:647"
        BranchSideFuncs:
        - "toException()"
    Callsites:
    - Src: "com.google.inject.internal.Errors:644,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.Errors:648,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 600
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.Errors].getMessages()"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:594"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:598"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:597"
        BranchSideFuncs:
        - "getMessages()"
        - "<init>(java.lang.Iterable)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:594,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.internal.Errors:598,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.Errors:598,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].getMessages()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 697
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].of()"
    - "[com.google.inject.internal.Errors$1].<init>(com.google.inject.internal.Errors)"
    - "[com.google.common.collect.Ordering].sortedCopy(java.lang.Iterable)"
    functionUses: 11
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:687"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:691"
        BranchSideFuncs:
        - "of()"
      - BranchSide: "com.google.inject.internal.Errors:690"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Errors)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:688,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.internal.Errors:691,1"
      Dst: "[com.google.inject.internal.Errors$1].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.Errors:696,1"
      Dst: "[com.google.common.collect.Ordering].sortedCopy(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors$1].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Errors$1"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 692
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Ordering].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors$1:691,1"
      Dst: "[com.google.common.collect.Ordering].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 208
    functionDepth: 2
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.InjectorImpl].getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].getMessages()"
    functionUses: 10
    ICount: 42
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:176"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:179"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:178"
        BranchSideFuncs:
        - "lock()"
    - Branch String: "com.google.inject.internal.InjectorImpl:181"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:188"
        BranchSideFuncs:
        - "getJitBinding(com.google.inject.Key)"
        - "getErrors()"
        - "<init>()"
        - "isProvider(com.google.inject.Key)"
        - "getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
        - "getMessages()"
        - "lock()"
        - "getExistingBinding(com.google.inject.Key)"
        - "getBinding(com.google.inject.Key)"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:187"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:184"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:179"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:178"
        BranchSideFuncs:
        - "lock()"
    - Branch String: "com.google.inject.internal.InjectorImpl:192"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:207"
        BranchSideFuncs:
        - "getJitBinding(com.google.inject.Key)"
        - "getErrors()"
        - "<init>()"
        - "isProvider(com.google.inject.Key)"
        - "getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
        - "getMessages()"
        - "lock()"
        - "getExistingBinding(com.google.inject.Key)"
        - "getBinding(com.google.inject.Key)"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:206"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:197"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:203"
        BranchSideFuncs:
        - "getBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:175,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:175,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:179,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - Src: "com.google.inject.internal.InjectorImpl:183,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:192,1"
      Dst: "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:196,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:196,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:197,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:198,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:201,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.InjectorImpl:201,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.InjectorImpl:201,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getBinding(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Binding<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:230,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:230,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:230,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getParent()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createChildInjector(java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 16
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalInjectorCreator].<init>()"
    - "[com.google.inject.internal.InternalInjectorCreator].parentInjector(com.google.inject.internal.InjectorImpl)"
    - "[com.google.inject.internal.InternalInjectorCreator].addModules(java.lang.Iterable)"
    - "[com.google.inject.internal.InternalInjectorCreator].build()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:240,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:240,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].parentInjector(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorImpl:240,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].addModules(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorImpl:240,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].<init>()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.ContinuousStopwatch].<init>(com.google.common.base.Stopwatch)"
    - "[com.google.common.base.Stopwatch].createUnstarted()"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.Initializer].<init>()"
    - "[com.google.inject.internal.InjectorShell$Builder].<init>()"
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.InjectionRequestProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer)"
    - "[com.google.inject.internal.ProcessedBindingData].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:64,1"
      Dst: "[com.google.common.base.Stopwatch].createUnstarted()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:64,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].<init>(com.google.common.base.Stopwatch)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:65,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:67,1"
      Dst: "[com.google.inject.internal.Initializer].<init>()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:71,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].<init>()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:75,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:76,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.ContinuousStopwatch].<init>(com.google.common.base.Stopwatch)"
    functionSourceFile: "com.google.inject.internal.util.ContinuousStopwatch"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.base.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.logging.Logger].getLogger(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.util.ContinuousStopwatch].reset()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:32,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:32,1"
      Dst: "[java.util.logging.Logger].getLogger(java.lang.String)"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:42,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.ContinuousStopwatch].reset()"
    functionSourceFile: "com.google.inject.internal.util.ContinuousStopwatch"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Stopwatch].elapsed(java.util.concurrent.TimeUnit)"
    - "[com.google.common.base.Stopwatch].reset()"
    - "[com.google.common.base.Stopwatch].start()"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:47,1"
      Dst: "[com.google.common.base.Stopwatch].elapsed(java.util.concurrent.TimeUnit)"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:48,1"
      Dst: "[com.google.common.base.Stopwatch].reset()"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:49,1"
      Dst: "[com.google.common.base.Stopwatch].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer].<init>()"
    functionSourceFile: "com.google.inject.internal.Initializer"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].<init>()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.Maps].newIdentityHashMap()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.Initializer:51,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].<init>()"
    - Src: "com.google.inject.internal.Initializer:59,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.Initializer:66,1"
      Dst: "[com.google.common.collect.Maps].newIdentityHashMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].<init>()"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].<init>()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.Lists].newArrayList()"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:82,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer)"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.Initializer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:42,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:38,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].parentInjector(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.internal.InternalInjectorCreator"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorShell$Builder].parent(com.google.inject.internal.InjectorImpl)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:90,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].parent(com.google.inject.internal.InjectorImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].parent(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 108
    functionDepth: 4
    returnType: "com.google.inject.internal.InjectorShell$Builder"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorJitBindingData].<init>(java.util.Optional)"
    - "[com.google.inject.internal.InjectorImpl].getJitBindingData()"
    - "[java.util.Optional].of(java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].<init>(java.util.Optional)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:103,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getJitBindingData()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:103,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:103,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].<init>(java.util.Optional)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:104,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:104,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].<init>(java.util.Optional)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getJitBindingData()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorJitBindingData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].<init>(java.util.Optional)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Optional"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Optional].get()"
    - "[java.util.Optional].isPresent()"
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - "[com.google.inject.internal.WeakKeySet].<init>(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorJitBindingData:40"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorJitBindingData:38"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "lock()"
        - "isPresent()"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorJitBindingData:37"
        BranchSideFuncs:
        - "<init>()"
        - "lock()"
        - "isPresent()"
        - "get()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:18,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:23,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:40,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:40,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:40,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:41,1"
      Dst: "[com.google.inject.internal.WeakKeySet].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.WeakKeySet].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].bootstrap$(com.google.inject.internal.WeakKeySet)"
    - "[com.google.common.cache.CacheBuilder].build()"
    - "[com.google.common.cache.CacheBuilder].newBuilder()"
    - "[com.google.common.cache.CacheBuilder].removalListener(com.google.common.cache.RemovalListener)"
    - "[com.google.common.cache.CacheBuilder].weakKeys()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.WeakKeySet:54,1"
      Dst: "[com.google.common.cache.CacheBuilder].newBuilder()"
    - Src: "com.google.inject.internal.WeakKeySet:54,1"
      Dst: "[com.google.common.cache.CacheBuilder].weakKeys()"
    - Src: "com.google.inject.internal.WeakKeySet:54,1"
      Dst: "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].bootstrap$(com.google.inject.internal.WeakKeySet)"
    - Src: "com.google.inject.internal.WeakKeySet:54,1"
      Dst: "[com.google.common.cache.CacheBuilder].removalListener(com.google.common.cache.RemovalListener)"
    - Src: "com.google.inject.internal.WeakKeySet:54,1"
      Dst: "[com.google.common.cache.CacheBuilder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].bootstrap$(com.google.inject.internal.WeakKeySet)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.cache.RemovalListener"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.WeakKeySet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].<init>(com.google.inject.internal.WeakKeySet)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32:-1,1"
      Dst: "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].<init>(com.google.inject.internal.WeakKeySet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].<init>(com.google.inject.internal.WeakKeySet)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.WeakKeySet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].<init>(java.util.Optional)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Optional"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps].newLinkedHashMap()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[com.google.common.collect.Sets].newLinkedHashSet()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.ArrayListMultimap].create()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 32
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InjectorBindingData:60,1"
      Dst: "[com.google.common.collect.Maps].newLinkedHashMap()"
    - Src: "com.google.inject.internal.InjectorBindingData:62,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "com.google.inject.internal.InjectorBindingData:63,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.internal.InjectorBindingData:64,1"
      Dst: "[com.google.common.collect.Sets].newLinkedHashSet()"
    - Src: "com.google.inject.internal.InjectorBindingData:68,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.InjectorBindingData:75,1"
      Dst: "[com.google.common.collect.ArrayListMultimap].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].build()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 121
    functionDepth: 15
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[com.google.inject.internal.InjectorShell$Builder].lock()"
    - "[com.google.inject.internal.InjectorShell$Builder].build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - "[com.google.inject.internal.InternalInjectorCreator].initializeStatically()"
    - "[com.google.inject.internal.InternalInjectorCreator].injectDynamically()"
    - "[com.google.inject.internal.InjectorShell$Builder].getStage()"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].<init>(com.google.inject.Injector)"
    - "[com.google.inject.internal.InternalInjectorCreator].primaryInjector()"
    functionUses: 1
    ICount: 35
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:100"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:106"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:105"
        BranchSideFuncs:
        - "initializeStatically()"
        - "resetAndLog(java.lang.String)"
        - "lock()"
        - "build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:115"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:119"
        BranchSideFuncs:
        - "primaryInjector()"
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:101,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:106,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].lock()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:107,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:108,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:110,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].initializeStatically()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:113,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].injectDynamically()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:115,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].getStage()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:118,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].primaryInjector()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:118,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].<init>(com.google.inject.Injector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].lock()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 135
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorJitBindingData].<init>(java.util.Optional)"
    - "[java.util.Optional].empty()"
    - "[com.google.inject.internal.InjectorBindingData].<init>(java.util.Optional)"
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:130"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:134"
        BranchSideFuncs:
        - "empty()"
        - "<init>(java.util.Optional)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:133"
        BranchSideFuncs:
        - "lock()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:131,1"
      Dst: "[java.util.Optional].empty()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:131,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].<init>(java.util.Optional)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:132,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].<init>(java.util.Optional)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:134,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 234
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.Initializer"
    - "com.google.inject.internal.ProcessedBindingData"
    - "com.google.inject.internal.util.ContinuousStopwatch"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.InjectorShell$RootModule].<init>()"
    - "[com.google.common.collect.ForwardingList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Lists$ReverseList].add(int,java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(int,java.lang.Object)"
    - "[java.util.AbstractSequentialList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].add(int,java.lang.Object)"
    - "[java.util.Vector].add(int,java.lang.Object)"
    - "[java.util.AbstractList].add(int,java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].add(int,java.lang.Object)"
    - "[java.util.LinkedList].add(int,java.lang.Object)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].add(int,java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].add(int,java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(int,java.lang.Object)"
    - "[com.google.inject.internal.InjectorShell$InheritedScannersModule].<init>(com.google.inject.internal.InjectorBindingData)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ForwardingCollection].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ImmutableCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    - "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.internal.GuiceInternal,java.util.List)"
    - "[com.google.inject.internal.InjectorOptionsProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.AbstractProcessor].process(com.google.inject.internal.InjectorImpl,java.util.List)"
    - "[com.google.inject.internal.InjectorOptionsProcessor].getOptions(com.google.inject.Stage,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    - "[com.google.inject.internal.InjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InjectorBindingData,com.google.inject.internal.InjectorJitBindingData,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    - "[com.google.inject.internal.PrivateElementsImpl].initInjector(com.google.inject.Injector)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].prepareBuiltInConverters(com.google.inject.internal.InjectorImpl)"
    - "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - "[com.google.inject.internal.MessageProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InterceptorBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ListenerBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindings()"
    - "[com.google.inject.internal.MembersInjectorStore].<init>(com.google.inject.internal.InjectorImpl,java.util.List)"
    - "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindings()"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].<init>(java.util.List)"
    - "[com.google.inject.internal.ScopeBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorShell].bindStage(com.google.inject.internal.InjectorImpl,com.google.inject.Stage)"
    - "[com.google.inject.internal.InjectorShell].bindInjector(com.google.inject.internal.InjectorImpl)"
    - "[com.google.inject.internal.InjectorShell].bindLogger(com.google.inject.internal.InjectorImpl)"
    - "[com.google.inject.internal.BindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData)"
    - "[com.google.inject.internal.UntargettedBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    - "[com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.internal.InjectorShell].<init>(java.util.List,com.google.inject.internal.InjectorImpl)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.PrivateElementProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.PrivateElementProcessor].getInjectorShellBuilders()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.InjectorShell$Builder].build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].add(int,java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 156
    EdgeCount: 283
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:147"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:146"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:148"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:147"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:146"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:148"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:147"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:146"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:149"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:148"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:147"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:149"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:148"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:151"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:149"
        BranchSideFuncs:
        - "isEmpty()"
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:148"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:149"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:148"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:155"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:158"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:157"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.InjectorBindingData)"
        - "add(int,java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:166"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:171"
        BranchSideFuncs:
        - "check(com.google.inject.internal.GuiceInternal,java.util.List)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:170"
        BranchSideFuncs:
        - "getOptions(com.google.inject.Stage,com.google.inject.internal.InjectorImpl$InjectorOptions)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InjectorBindingData,com.google.inject.internal.InjectorJitBindingData,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:176"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:181"
        BranchSideFuncs:
        - "initInjector(com.google.inject.Injector)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:180"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:181"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:185"
        BranchSideFuncs:
        - "prepareBuiltInConverters(com.google.inject.internal.InjectorImpl)"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:184"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>(com.google.inject.internal.InjectorImpl,java.util.List)"
        - "next()"
        - "bindLogger(com.google.inject.internal.InjectorImpl)"
        - "<init>(com.google.inject.internal.Errors)"
        - "getTypeListenerBindings()"
        - "<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData)"
        - "process(com.google.inject.internal.InjectorImpl,java.util.List)"
        - "bindStage(com.google.inject.internal.InjectorImpl,com.google.inject.Stage)"
        - "<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
        - "add(java.lang.Object)"
        - "getProvisionListenerBindings()"
        - "<init>(java.util.List,com.google.inject.internal.InjectorImpl)"
        - "bindInjector(com.google.inject.internal.InjectorImpl)"
        - "getInjectorShellBuilders()"
        - "iterator()"
        - "newArrayList()"
        - "<init>(java.util.List)"
        - "getBindingData()"
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:228"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:231"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "addAll(java.util.Collection)"
        - "build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
        - "getInjectorShellBuilders()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:230"
        BranchSideFuncs:
        - "resetAndLog(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:147,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:151,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:156,1"
      Dst: "[com.google.inject.internal.InjectorShell$RootModule].<init>()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:156,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:158,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:158,1"
      Dst: "[com.google.inject.internal.InjectorShell$InheritedScannersModule].<init>(com.google.inject.internal.InjectorBindingData)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:160,1"
      Dst: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:160,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:167,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.internal.GuiceInternal,java.util.List)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:171,1"
      Dst: "[com.google.inject.internal.InjectorOptionsProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:172,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].process(com.google.inject.internal.InjectorImpl,java.util.List)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:173,1"
      Dst: "[com.google.inject.internal.InjectorOptionsProcessor].getOptions(com.google.inject.Stage,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:175,1"
      Dst: "[com.google.inject.internal.InjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InjectorBindingData,com.google.inject.internal.InjectorJitBindingData,com.google.inject.internal.InjectorImpl$InjectorOptions)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:177,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].initInjector(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:182,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].prepareBuiltInConverters(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:185,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:187,1"
      Dst: "[com.google.inject.internal.MessageProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:189,1"
      Dst: "[com.google.inject.internal.InterceptorBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:192,1"
      Dst: "[com.google.inject.internal.ListenerBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:194,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindings()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:195,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].<init>(com.google.inject.internal.InjectorImpl,java.util.List)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:197,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindings()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:198,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].<init>(java.util.List)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:202,1"
      Dst: "[com.google.inject.internal.ScopeBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:205,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:208,1"
      Dst: "[com.google.inject.internal.InjectorShell].bindStage(com.google.inject.internal.InjectorImpl,com.google.inject.Stage)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:209,1"
      Dst: "[com.google.inject.internal.InjectorShell].bindInjector(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:210,1"
      Dst: "[com.google.inject.internal.InjectorShell].bindLogger(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:215,1"
      Dst: "[com.google.inject.internal.BindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:216,1"
      Dst: "[com.google.inject.internal.UntargettedBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:219,1"
      Dst: "[com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:222,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:223,1"
      Dst: "[com.google.inject.internal.InjectorShell].<init>(java.util.List,com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:223,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:226,1"
      Dst: "[com.google.inject.internal.PrivateElementProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorShell$Builder:228,1"
      Dst: "[com.google.inject.internal.PrivateElementProcessor].getInjectorShellBuilders()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:228,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:228,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:228,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:229,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].build(com.google.inject.internal.Initializer,com.google.inject.internal.ProcessedBindingData,com.google.inject.internal.util.ContinuousStopwatch,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 28
    CyclomaticComplexity: 13
  - functionName: "[com.google.inject.internal.InjectorShell$RootModule].<init>()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$RootModule"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$RootModule:336,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InheritedScannersModule].<init>(com.google.inject.internal.InjectorBindingData)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InheritedScannersModule"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 351
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorBindingData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:348,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore].<init>(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjectorStore$1].<init>(com.google.inject.internal.ConstructorInjectorStore)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:32,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore$1].<init>(com.google.inject.internal.ConstructorInjectorStore)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$1].<init>(com.google.inject.internal.ConstructorInjectorStore)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ConstructorInjectorStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$1:33,1"
      Dst: "[com.google.inject.internal.FailableCache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].prepareBuiltInConverters(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor].convertToPrimitiveType(com.google.inject.internal.InjectorImpl,java.lang.Class,java.lang.Class)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$1].<init>()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClass(com.google.inject.internal.InjectorImpl,java.lang.Class,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClasses(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$2].<init>()"
    - "[com.google.inject.matcher.Matchers].subclassesOf(java.lang.Class)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$4].<init>()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].<init>()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].internalConvertToTypes(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    functionUses: 1
    ICount: 28
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:45,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToPrimitiveType(com.google.inject.internal.InjectorImpl,java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:53,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$1].<init>()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:53,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClass(com.google.inject.internal.InjectorImpl,java.lang.Class,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:74,1"
      Dst: "[com.google.inject.matcher.Matchers].subclassesOf(java.lang.Class)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:74,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$2].<init>()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:72,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClasses(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:88,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$3].<init>()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:88,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$4].<init>()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:88,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].internalConvertToTypes(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$1].<init>()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$2].<init>()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$2"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$2:75,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$3].<init>()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$3"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$3:90,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$4].<init>()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$4"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$4:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.ContinuousStopwatch"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[com.google.inject.internal.util.ContinuousStopwatch].reset()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,long)"
    functionUses: 20
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:55,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].reset()"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:55,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,long)"
    - Src: "com.google.inject.internal.util.ContinuousStopwatch:55,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MessageProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MessageProcessor"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MessageProcessor:35,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ListenerBindingProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ListenerBindingProcessor"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ListenerBindingProcessor:30,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].isPresent()"
    - "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindings()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:199"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:205"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:204"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:199,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:200,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - Src: "com.google.inject.internal.InjectorBindingData:201,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:201,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindings()"
    - Src: "com.google.inject.internal.InjectorBindingData:201,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorBindingData:203,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.InjectorBindingData:205,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].<init>(com.google.inject.internal.InjectorImpl,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore$1].<init>(com.google.inject.internal.MembersInjectorStore)"
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MembersInjectorStore:44,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore$1].<init>(com.google.inject.internal.MembersInjectorStore)"
    - Src: "com.google.inject.internal.MembersInjectorStore:55,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 224
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].isPresent()"
    - "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindings()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:217"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:223"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:222"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:217,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:218,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - Src: "com.google.inject.internal.InjectorBindingData:219,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:219,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindings()"
    - Src: "com.google.inject.internal.InjectorBindingData:219,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorBindingData:221,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.InjectorBindingData:223,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$1].<init>(com.google.inject.internal.ProvisionListenerCallbackStore)"
    - "[com.google.common.cache.CacheBuilder].newBuilder()"
    - "[com.google.common.cache.CacheBuilder].build(com.google.common.cache.CacheLoader)"
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:49,1"
      Dst: "[com.google.common.cache.CacheBuilder].newBuilder()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:49,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore$1].<init>(com.google.inject.internal.ProvisionListenerCallbackStore)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:50,1"
      Dst: "[com.google.common.cache.CacheBuilder].build(com.google.common.cache.CacheLoader)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:59,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$1].<init>(com.google.inject.internal.ProvisionListenerCallbackStore)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ProvisionListenerCallbackStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.CacheLoader].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$1:51,1"
      Dst: "[com.google.common.cache.CacheLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeBindingProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ScopeBindingProcessor"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeBindingProcessor:34,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:39,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell].bindStage(com.google.inject.internal.InjectorImpl,com.google.inject.Stage)"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 335
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Stage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell:324,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorShell:330,1"
      Dst: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell:330,1"
      Dst: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - Src: "com.google.inject.internal.InjectorShell:331,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InjectorShell:331,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell:333,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectorShell:333,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Initializables"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 1
    returnType: "com.google.inject.internal.Initializable"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Initializables$1].<init>(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializables:24,1"
      Dst: "[com.google.inject.internal.Initializables$1].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializables$1].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Initializables$1"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializables$1:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    functionSourceFile: "com.google.inject.internal.ConstantFactory"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Initializable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantFactory:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "java.util.Set"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:46,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:47,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell].bindInjector(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 258
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].<init>(com.google.inject.Injector)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - "[com.google.common.collect.ImmutableSet].of()"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell:243,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorShell:244,1"
      Dst: "[com.google.inject.internal.InjectorShell$InjectorFactory].<init>(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.InjectorShell:246,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectorShell:256,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InjectorShell:256,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - Src: "com.google.inject.internal.InjectorShell:247,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InjectorFactory].<init>(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InjectorFactory"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$InjectorFactory:262,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    - "jakarta.inject.Provider"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:50,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:52,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell].bindLogger(com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 302
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].<init>()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - "[com.google.common.collect.ImmutableSet].of()"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell:287,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorShell:288,1"
      Dst: "[com.google.inject.internal.InjectorShell$LoggerFactory].<init>()"
    - Src: "com.google.inject.internal.InjectorShell:290,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectorShell:300,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InjectorShell:300,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - Src: "com.google.inject.internal.InjectorShell:291,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$LoggerFactory].<init>()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$LoggerFactory"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 304
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:303,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.ProcessedBindingData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor:30,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].<init>(com.google.inject.internal.Errors,com.google.inject.internal.ProcessedBindingData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor:29,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell].<init>(java.util.List,com.google.inject.internal.InjectorImpl)"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "com.google.inject.internal.InjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementProcessor].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.PrivateElementProcessor"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementProcessor:33,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.PrivateElementProcessor:30,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementProcessor].getInjectorShellBuilders()"
    functionSourceFile: "com.google.inject.internal.PrivateElementProcessor"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].initializeStatically()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 165
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProcessedBindingData].initializeBindings()"
    - "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorShell].getInjector()"
    - "[com.google.inject.internal.InjectorBindingData].indexBindingsByType()"
    - "[com.google.inject.internal.AbstractProcessor].process(java.lang.Iterable)"
    - "[com.google.inject.internal.ProcessedBindingData].runCreationListeners(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectionRequestProcessor].validate()"
    - "[com.google.inject.internal.Initializer].validateOustandingInjections(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.LookupProcessor].<init>(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.DeferredLookups].initialize(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ProcessedBindingData].initializeDelayedBindings()"
    - "[com.google.inject.internal.InjectorShell].getElements()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[com.google.inject.internal.Errors].throwCreationExceptionIfErrorsExist()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].isEmpty()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.util.List)"
    functionUses: 1
    ICount: 77
    EdgeCount: 483
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:132"
        BranchSideFuncs:
        - "indexBindingsByType()"
        - "getBindingData()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:131"
        BranchSideFuncs:
        - "validateOustandingInjections(com.google.inject.internal.Errors)"
        - "<init>(com.google.inject.internal.Errors)"
        - "validate()"
        - "runCreationListeners(com.google.inject.internal.Errors)"
        - "process(java.lang.Iterable)"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:150"
        BranchSideFuncs:
        - "initialize(com.google.inject.internal.Errors)"
        - "getInjector()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:149"
        BranchSideFuncs:
        - "hasNext()"
        - "resetAndLog(java.lang.String)"
        - "next()"
        - "initializeDelayedBindings()"
        - "iterator()"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:157"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:163"
        BranchSideFuncs:
        - "hasNext()"
        - "isEmpty()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:162"
        BranchSideFuncs:
        - "throwCreationExceptionIfErrorsExist()"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:161"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "getElements()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:126,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].initializeBindings()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:127,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:129,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:129,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:129,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:130,1"
      Dst: "[com.google.inject.internal.InjectorShell].getInjector()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:130,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:130,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].indexBindingsByType()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:134,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].process(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:137,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].runCreationListeners(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:140,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor].validate()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:143,1"
      Dst: "[com.google.inject.internal.Initializer].validateOustandingInjections(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:146,1"
      Dst: "[com.google.inject.internal.LookupProcessor].<init>(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:148,1"
      Dst: "[com.google.inject.internal.DeferredLookups].initialize(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:154,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].initializeDelayedBindings()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:158,1"
      Dst: "[com.google.inject.internal.InjectorShell].getElements()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:158,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:159,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.util.List)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:159,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:163,1"
      Dst: "[com.google.inject.internal.Errors].throwCreationExceptionIfErrorsExist()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InjectorShell].getInjector()"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].indexBindingsByType()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 265
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.AbstractBiMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].values()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryBiMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.Hashtable].values()"
    - "[com.google.common.collect.CompactHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[com.google.common.collect.EnumBiMap].values()"
    - "[com.google.common.collect.HashBiMap$Inverse].values()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].values()"
    - "[com.google.common.collect.ImmutableMap].values()"
    - "[com.google.common.collect.Maps$DescendingMap].values()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].values()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].values()"
    - "[com.google.common.collect.EnumHashBiMap].values()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].values()"
    - "[java.util.HashMap].values()"
    - "[com.google.common.collect.ForwardingMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedBiMap].values()"
    - "[java.util.EnumMap].values()"
    - "[com.google.common.collect.ImmutableBiMap].values()"
    - "[com.google.common.cache.LocalCache].values()"
    - "[com.google.common.collect.AbstractBiMap$Inverse].values()"
    - "[com.google.common.collect.MapMakerInternalMap].values()"
    - "[java.util.TreeMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.Properties].values()"
    - "[com.google.common.collect.HashBiMap].values()"
    - "[java.security.Provider].values()"
    - "[com.google.common.collect.ImmutableSortedMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 322
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:261"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:264"
        BranchSideFuncs:
        - "getExplicitBindingsThisLevel()"
        - "values()"
        - "put(java.lang.Object,java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getTypeLiteral()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:261,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorBindingData:261,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.InjectorBindingData:261,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.InjectorBindingData:261,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorBindingData:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorBindingData:262,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.InjectorBindingData:262,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorBindingData:262,1"
      Dst: "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].validate()"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].validate()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor:91"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor:94"
        BranchSideFuncs:
        - "validate()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:92,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].validate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].validate()"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 138
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].getInjectionPoints()"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.internal.MembersInjectorStore].getInjectors(java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.common.collect.ImmutableList].of()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:133"
        BranchSideFuncs:
        - "getInjectors(java.util.Set,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:132"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:121,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:124,1"
      Dst: "[com.google.inject.spi.StaticInjectionRequest].getInjectionPoints()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:126,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:126,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:127,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:131,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].getInjectors(java.util.Set,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:133,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:136,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].<init>(com.google.inject.internal.Errors,java.lang.Object)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:128"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:127"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Errors:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:130"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:129"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Errors,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.Errors:130,1"
      Dst: "[com.google.inject.internal.Errors].<init>(com.google.inject.internal.Errors,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Errors].<init>(com.google.inject.internal.Errors,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:120,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].getInjectionPoints()"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:68,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.ConfigurationException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ConfigurationException].getPartialValue()"
    functionSourceFile: "com.google.inject.ConfigurationException"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer].validateOustandingInjections(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Initializer"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 143
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].clear()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.Initializer$InjectableReference].validate(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 18
    EdgeCount: 151
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Initializer:135"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:142"
        BranchSideFuncs:
        - "hasNext()"
        - "getErrors()"
        - "iterator()"
        - "validate(com.google.inject.internal.Errors)"
        - "next()"
        - "merge(com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.Initializer:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer:134,1"
      Dst: "[java.util.IdentityHashMap].clear()"
    - Src: "com.google.inject.internal.Initializer:135,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.Initializer:135,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.Initializer:135,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.Initializer:137,1"
      Dst: "[com.google.inject.internal.Initializer$InjectableReference].validate(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.Initializer:139,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.Initializer:139,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Initializer$InjectableReference].validate(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReference"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReference:198,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:198,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:199,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell].getElements()"
    functionSourceFile: "com.google.inject.internal.InjectorShell"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].throwCreationExceptionIfErrorsExist()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 584
    functionLinenumberEnd: 591
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.CreationException].<init>(java.util.Collection)"
    - "[com.google.inject.internal.Errors].getMessages()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:585"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:589"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:588"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "getMessages()"
    Callsites:
    - Src: "com.google.inject.internal.Errors:585,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.internal.Errors:589,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.Errors:589,1"
      Dst: "[com.google.inject.CreationException].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.CreationException].<init>(java.util.Collection)"
    functionSourceFile: "com.google.inject.CreationException"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.RegularContiguousSet:java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.util.AbstractCollection].isEmpty()"
    functionUses: 1
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.CreationException:39"
      Branch Sides:
      - BranchSide: "com.google.inject.CreationException:37"
        BranchSideFuncs:
        - "isEmpty()"
        - "getOnlyCause(java.util.Collection)"
        - "checkArgument(boolean)"
        - "initCause(java.lang.Throwable)"
      - BranchSide: "com.google.inject.CreationException:36"
        BranchSideFuncs:
        - "isEmpty()"
        - "<init>()"
        - "checkArgument(boolean)"
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.CreationException:37,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    - Src: "com.google.inject.CreationException:38,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.CreationException:39,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.CreationException:39,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - Src: "com.google.inject.CreationException:40,1"
      Dst: "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - Src: "com.google.inject.CreationException:40,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].injectDynamically()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 192
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectionRequestProcessor].injectMembers()"
    - "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - "[com.google.inject.internal.Initializer].injectAll(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].throwCreationExceptionIfErrorsExist()"
    - "[com.google.inject.internal.InjectorShell$Builder].getStage()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.InjectorShell].getInjector()"
    - "[com.google.inject.internal.InternalInjectorCreator].loadEagerSingletons(com.google.inject.internal.InjectorImpl,com.google.inject.Stage,com.google.inject.internal.Errors)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 33
    EdgeCount: 158
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:184"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:190"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:189"
        BranchSideFuncs:
        - "throwCreationExceptionIfErrorsExist()"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:185"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:188"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "loadEagerSingletons(com.google.inject.internal.InjectorImpl,com.google.inject.Stage,com.google.inject.internal.Errors)"
        - "getStage()"
        - "getInjector()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:187"
        BranchSideFuncs:
        - "resetAndLog(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:177,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor].injectMembers()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:178,1"
      Dst: "[com.google.inject.internal.util.ContinuousStopwatch].resetAndLog(java.lang.String)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:180,1"
      Dst: "[com.google.inject.internal.Initializer].injectAll(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:182,1"
      Dst: "[com.google.inject.internal.Errors].throwCreationExceptionIfErrorsExist()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:184,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].getStage()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:185,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:185,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:185,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:186,1"
      Dst: "[com.google.inject.internal.InjectorShell].getInjector()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:186,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].loadEagerSingletons(com.google.inject.internal.InjectorImpl,com.google.inject.Stage,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].injectMembers()"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].injectMembers()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor:105"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "injectMembers()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:102,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:103,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].injectMembers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].injectMembers()"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 158
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].enterContext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.inject.internal.SingleFieldInjector].getInjectionPoint()"
    - "[com.google.inject.internal.SingleMethodInjector].getInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint].isToolable()"
    - "[com.google.inject.internal.SingleFieldInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - "[com.google.inject.internal.SingleMethodInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - "[com.google.inject.internal.InternalContext].close()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    - "[com.google.inject.internal.SingleMemberInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    functionUses: 1
    ICount: 35
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:142"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:140"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:139"
        BranchSideFuncs:
        - "enterContext()"
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:143"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:155"
        BranchSideFuncs:
        - "isToolable()"
        - "hasNext()"
        - "getInjectionPoint()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:154"
        BranchSideFuncs:
        - "close()"
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:146"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:148"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
        - "isToolable()"
        - "hasNext()"
        - "getInjectionPoint()"
        - "iterator()"
        - "merge(com.google.inject.internal.InternalProvisionException)"
        - "next()"
        - "close()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:147"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
        - "merge(com.google.inject.internal.InternalProvisionException)"
    - Branch String: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:146"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:153"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
        - "isToolable()"
        - "hasNext()"
        - "getInjectionPoint()"
        - "iterator()"
        - "merge(com.google.inject.internal.InternalProvisionException)"
        - "next()"
        - "close()"
      - BranchSide: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:140,1"
      Dst: "[com.google.inject.internal.InjectorImpl].enterContext()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:143,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:146,1"
      Dst: "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:146,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isToolable()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:148,1"
      Dst: "[com.google.inject.internal.SingleMemberInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:150,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:155,1"
      Dst: "[com.google.inject.internal.InternalContext].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InjectorImpl].enterContext()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1223
    functionLinenumberEnd: 1236
    functionDepth: 1
    returnType: "com.google.inject.internal.InternalContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[jdk.internal.misc.TerminatingThreadLocal].set(java.lang.Object)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    - "[com.google.inject.internal.InternalContext].<init>(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Object[])"
    - "[com.google.inject.internal.InternalContext].enter()"
    functionUses: 5
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:1225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:1229"
        BranchSideFuncs:
        - "set(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:1228"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:1230"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:1233"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.InjectorImpl:1232"
        BranchSideFuncs:
        - "enter()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1224,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "com.google.inject.internal.InjectorImpl:1227,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1231,1"
      Dst: "[com.google.inject.internal.InternalContext].<init>(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Object[])"
    - Src: "com.google.inject.internal.InjectorImpl:1233,1"
      Dst: "[com.google.inject.internal.InternalContext].enter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.InternalContext].<init>(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl$InjectorOptions"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalContext:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InternalContext:32,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalContext].enter()"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].isToolable()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].isAnnotationPresent(java.lang.Class)"
    - "[com.google.common.reflect.Parameter].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.Package].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.reflect.AnnotatedElement].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    functionUses: 2
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:201,1"
      Dst: "[java.lang.reflect.AnnotatedElement].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InternalProvisionException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:629,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].getErrors()"
    - Src: "com.google.inject.internal.Errors:629,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalContext].close()"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 11
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalContext:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalContext:69"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.InternalContext:68"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InternalContext:69"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalContext:72"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InternalContext:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalContext:67,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Initializer].injectAll(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Initializer"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 160
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.Initializer$InjectableReference].get()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - "[com.google.common.collect.ForwardingCollection].clear()"
    - "[com.google.common.collect.ImmutableCollection].clear()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].clear()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].clear()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clear()"
    - "[com.google.common.collect.Lists$ReverseList].clear()"
    - "[java.util.AbstractList].clear()"
    - "[java.util.Vector].clear()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.ArrayList].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].clear()"
    functionUses: 1
    ICount: 18
    EdgeCount: 160
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Initializer:151"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:158"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "merge(com.google.inject.internal.InternalProvisionException)"
        - "next()"
        - "get()"
      - BranchSide: "com.google.inject.internal.Initializer:157"
        BranchSideFuncs:
        - "clear()"
    Callsites:
    - Src: "com.google.inject.internal.Initializer:150,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:151,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.Initializer:151,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.Initializer:151,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.Initializer:153,1"
      Dst: "[com.google.inject.internal.Initializer$InjectableReference].get()"
    - Src: "com.google.inject.internal.Initializer:155,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - Src: "com.google.inject.internal.Initializer:158,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Initializer$InjectableReference].get()"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReference"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 268
    functionDepth: 12
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - "[com.google.common.collect.ImmutableMultimap].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].isEmpty()"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].isEmpty()"
    - "[com.google.common.collect.ForwardingMultimap].isEmpty()"
    - "[com.google.common.collect.AbstractMultimap].isEmpty()"
    - "[com.google.common.collect.ArrayListMultimap].isEmpty()"
    - "[com.google.common.collect.LinkedListMultimap].isEmpty()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.MembersInjectorImpl].injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].unlock()"
    - "[com.google.inject.internal.CycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - "[com.google.common.collect.Multimap].isEmpty()"
    - "[com.google.inject.internal.CycleDetectingLock].unlock()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.internal.Initializer$InjectableReferenceState)"
    functionUses: 3
    ICount: 65
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Initializer$InjectableReference:211"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:216"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:215"
        BranchSideFuncs:
        - "isEmpty()"
        - "lockOrDetectPotentialLocksCycle()"
    - Branch String: "com.google.inject.internal.Initializer$InjectableReference:217"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:236"
        BranchSideFuncs:
        - "isEmpty()"
        - "lockOrDetectPotentialLocksCycle()"
        - "unlock()"
        - "<init>(java.lang.String)"
        - "ordinal()"
        - "injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
        - "addSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:235"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "com.google.inject.internal.Initializer$InjectableReference:256"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:256"
        BranchSideFuncs:
        - "injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
        - "addSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Initializer$InjectableReference:255"
        BranchSideFuncs:
        - "injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReference:216,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:217,1"
      Dst: "[com.google.common.collect.Multimap].isEmpty()"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:236,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:266,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock].unlock()"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:248,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:250,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.internal.Initializer$InjectableReferenceState)"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:256,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:259,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 119
    functionDepth: 11
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.ProvisionListenerStackCallback"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].enterContext()"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].hasListeners()"
    - "[com.google.inject.internal.MembersInjectorImpl$1].<init>(com.google.inject.internal.MembersInjectorImpl,java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    - "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - "[com.google.inject.internal.InternalContext].close()"
    - "[com.google.inject.internal.MembersInjectorImpl].notifyListeners(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:88"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:87"
        BranchSideFuncs:
        - "hasListeners()"
        - "enterContext()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:101"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.MembersInjectorImpl,java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:100"
        BranchSideFuncs:
        - "injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:101"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.MembersInjectorImpl,java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:100"
        BranchSideFuncs:
        - "injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:115"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:118"
        BranchSideFuncs:
        - "notifyListeners(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:88,1"
      Dst: "[com.google.inject.internal.InjectorImpl].enterContext()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:90,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].hasListeners()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:91,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl$1].<init>(com.google.inject.internal.MembersInjectorImpl,java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:91,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:101,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:104,1"
      Dst: "[com.google.inject.internal.InternalContext].close()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:116,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].notifyListeners(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback].hasListeners()"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback:58"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MembersInjectorImpl$1].<init>(com.google.inject.internal.MembersInjectorImpl,java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl$1"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.MembersInjectorImpl"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl$1:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 85
    functionDepth: 10
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].<init>(com.google.inject.internal.ProvisionListenerStackCallback,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    - "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].provision()"
    - "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 5
    ICount: 32
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback:71"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:73"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:72"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback:73"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:83"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback:75"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:63,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].<init>(com.google.inject.internal.ProvisionListenerStackCallback,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:66,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].provision()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:75,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:81,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:76,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserCode(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].<init>(com.google.inject.internal.ProvisionListenerStackCallback,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback$Provision"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.ProvisionListenerStackCallback"
    - "com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProvisionListener$ProvisionInvocation].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:100,1"
      Dst: "[com.google.inject.spi.ProvisionListener$ProvisionInvocation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].provision()"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback$Provision"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 130
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory$1].call()"
    - "[com.google.inject.internal.ConstructorInjector$1].call()"
    - "[com.google.inject.internal.MembersInjectorImpl$1].call()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1].call()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1].call()"
    - "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    - "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].provision()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback].call()"
    - "[com.google.inject.spi.ProvisionListener].onProvision(com.google.inject.spi.ProvisionListener$ProvisionInvocation)"
    functionUses: 2
    ICount: 44
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:107"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:113"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:114"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:127"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:126"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:122"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:109,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback].call()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:112,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:117,1"
      Dst: "[com.google.inject.spi.ProvisionListener].onProvision(com.google.inject.spi.ProvisionListener$ProvisionInvocation)"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:124,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].provision()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback$Provision:127,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 168
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.internal.InternalContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.inject.internal.SingleFieldInjector].getInjectionPoint()"
    - "[com.google.inject.internal.SingleMethodInjector].getInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint].isToolable()"
    - "[com.google.inject.internal.SingleFieldInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - "[com.google.inject.internal.SingleMethodInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup$1].injectMembers(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].errorInUserInjector(com.google.inject.MembersInjector,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
    - "[java.util.AbstractCollection].size()"
    - "[java.util.List].get(int)"
    - "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    - "[com.google.inject.internal.SingleMemberInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    functionUses: 3
    ICount: 35
    EdgeCount: 78
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:141"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:151"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:143"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:152"
        BranchSideFuncs:
        - "isToolable()"
        - "getInjectionPoint()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:151"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:145"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:146"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:145"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:145"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:143"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:142"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:152"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:167"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:166"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:154"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:167"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext,java.lang.Object)"
        - "isToolable()"
        - "getInjectionPoint()"
        - "injectMembers(java.lang.Object)"
        - "get(int)"
        - "size()"
        - "errorInUserInjector(com.google.inject.MembersInjector,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:166"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:156"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:167"
        BranchSideFuncs:
        - "injectMembers(java.lang.Object)"
        - "get(int)"
        - "errorInUserInjector(com.google.inject.MembersInjector,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:143,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:144,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:145,1"
      Dst: "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:145,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isToolable()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:146,1"
      Dst: "[com.google.inject.internal.SingleMemberInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:159,1"
      Dst: "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:161,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInUserInjector(com.google.inject.MembersInjector,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].notifyListeners(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList:com.google.common.collect.ImmutableRangeMap$1:com.google.common.collect.ImmutableRangeSet$1:com.google.common.collect.ImmutableRangeSet$ComplementRanges:com.google.common.collect.RegularImmutableList:com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.inject.internal.InternalProvisionException].errorNotifyingInjectionListener(com.google.inject.spi.InjectionListener,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
    - "[java.util.AbstractCollection].size()"
    - "[java.util.List].get(int)"
    - "[com.google.inject.spi.InjectionListener].afterInjection(java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:122"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:126"
        BranchSideFuncs:
        - "size()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:127"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:136"
        BranchSideFuncs:
        - "errorNotifyingInjectionListener(com.google.inject.spi.InjectionListener,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
        - "get(int)"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:127,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:128,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:130,1"
      Dst: "[com.google.inject.spi.InjectionListener].afterInjection(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:132,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorNotifyingInjectionListener(com.google.inject.spi.InjectionListener,com.google.inject.TypeLiteral,java.lang.RuntimeException)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].getStage()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "com.google.inject.Stage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].loadEagerSingletons(com.google.inject.internal.InjectorImpl,com.google.inject.Stage,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 223
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Stage"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - "[com.google.common.collect.AbstractBiMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].values()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryBiMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.Hashtable].values()"
    - "[com.google.common.collect.CompactHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[com.google.common.collect.EnumBiMap].values()"
    - "[com.google.common.collect.HashBiMap$Inverse].values()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].values()"
    - "[com.google.common.collect.ImmutableMap].values()"
    - "[com.google.common.collect.Maps$DescendingMap].values()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].values()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].values()"
    - "[com.google.common.collect.EnumHashBiMap].values()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].values()"
    - "[java.util.HashMap].values()"
    - "[com.google.common.collect.ForwardingMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedBiMap].values()"
    - "[java.util.EnumMap].values()"
    - "[com.google.common.collect.ImmutableBiMap].values()"
    - "[com.google.common.cache.LocalCache].values()"
    - "[com.google.common.collect.AbstractBiMap$Inverse].values()"
    - "[com.google.common.collect.MapMakerInternalMap].values()"
    - "[java.util.TreeMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.Properties].values()"
    - "[com.google.common.collect.HashBiMap].values()"
    - "[java.security.Provider].values()"
    - "[com.google.common.collect.ImmutableSortedMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.internal.InjectorImpl].getJitBindingData()"
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - "[com.google.inject.internal.InjectorJitBindingData].getJitBindings()"
    - "[com.google.inject.internal.InjectorImpl].enterContext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.InternalInjectorCreator].isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalContext].close()"
    - "[java.util.Map].values()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 1
    ICount: 45
    EdgeCount: 238
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:209"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:220"
        BranchSideFuncs:
        - "isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:219"
        BranchSideFuncs:
        - "close()"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:210"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:218"
        BranchSideFuncs:
        - "merge(com.google.inject.internal.InternalProvisionException)"
        - "withSource(java.lang.Object)"
        - "get(com.google.inject.Key)"
        - "get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
        - "getInternalFactory()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:198,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:201,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:201,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:201,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:202,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:203,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getJitBindingData()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:203,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:205,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getJitBindings()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:207,1"
      Dst: "[com.google.inject.internal.InjectorImpl].enterContext()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:209,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:209,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:209,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:210,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:211,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:211,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:213,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:213,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:215,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:215,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.InternalProvisionException)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:220,1"
      Dst: "[com.google.inject.internal.InternalContext].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].getJitBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:45,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].primaryInjector()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 1
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[com.google.inject.internal.InjectorShell].getInjector()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 50
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:168,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:168,1"
      Dst: "[com.google.inject.internal.InjectorShell].getInjector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].<init>(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:245,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createChildInjector(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    - "[com.google.inject.internal.InjectorImpl].createChildInjector(java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:245,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    - Src: "com.google.inject.internal.InjectorImpl:245,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createChildInjector(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].isProvider(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:308,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:308,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:308,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].isTypeLiteral(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:312,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:312,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:312,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getProvidedKey(com.google.inject.Key<Provider<T>>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 329
    functionDepth: 11
    returnType: "com.google.inject.Key<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<Provider<T>>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.Errors].cannotInjectRawProvider()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    functionUses: 2
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:320"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:324"
        BranchSideFuncs:
        - "cannotInjectRawProvider()"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:323"
        BranchSideFuncs:
        - "ofType(java.lang.reflect.Type)"
        - "getActualTypeArguments()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:317,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:317,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.InjectorImpl:321,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectRawProvider()"
    - Src: "com.google.inject.internal.InjectorImpl:321,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:324,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.internal.InjectorImpl:327,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectRawProvider()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 564
    functionLinenumberEnd: 566
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:565,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].isMembersInjector(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 335
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].getAnnotationType()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:333"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:333"
        BranchSideFuncs:
        - "getAnnotationType()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:332"
        BranchSideFuncs:
        - "getTypeLiteral()"
        - "equals(java.lang.Object)"
        - "getRawType()"
    - Branch String: "com.google.inject.internal.InjectorImpl:334"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:332"
        BranchSideFuncs:
        - "getTypeLiteral()"
        - "equals(java.lang.Object)"
        - "getRawType()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:333,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:333,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:333,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:334,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.InjectorImpl].createMembersInjectorBinding(com.google.inject.Key<MembersInjector<T>>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 359
    functionDepth: 11
    returnType: "com.google.inject.internal.BindingImpl<MembersInjector<T>>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<MembersInjector<T>>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.Errors].cannotInjectRawMembersInjector()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    functionUses: 1
    ICount: 24
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:340"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:347"
        BranchSideFuncs:
        - "cannotInjectRawMembersInjector()"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:346"
        BranchSideFuncs:
        - "get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
        - "<init>(com.google.inject.internal.Initializable)"
        - "of(java.lang.Object)"
        - "get(java.lang.reflect.Type)"
        - "getActualTypeArguments()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:339,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:339,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.InjectorImpl:341,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectRawMembersInjector()"
    - Src: "com.google.inject.internal.InjectorImpl:341,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:347,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.internal.InjectorImpl:347,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.InjectorImpl:348,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:351,1"
      Dst: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:351,1"
      Dst: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - Src: "com.google.inject.internal.InjectorImpl:358,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InjectorImpl:358,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectRawMembersInjector()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 569
    functionLinenumberEnd: 571
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:570,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createSyntheticProviderBinding(com.google.inject.Key<Provider<T>>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 371
    functionDepth: 8
    returnType: "com.google.inject.internal.BindingImpl<Provider<T>>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<Provider<T>>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Binding)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:368,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProvidedKey(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:369,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:370,1"
      Dst: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 388
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].createInternalFactory(com.google.inject.Binding)"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:383,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:384,1"
      Dst: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].createInternalFactory(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:380,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].createInternalFactory(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 392
    functionDepth: 1
    returnType: "com.google.inject.internal.InternalFactory"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].<init>(com.google.inject.Provider)"
    - "[com.google.inject.Binding].getProvider()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:390,1"
      Dst: "[com.google.inject.Binding].getProvider()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:391,1"
      Dst: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].<init>(com.google.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].<init>(com.google.inject.Provider)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1:391,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].convertConstantStringBinding(com.google.inject.Key<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 501
    functionDepth: 3
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].isConstant()"
    - "[com.google.inject.internal.InstanceBindingImpl].getInstance()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.InjectorBindingData].getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].convert(java.lang.String,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$4].convert(java.lang.String,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$2].convert(java.lang.String,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$1].convert(java.lang.String,com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.TypeConverterBinding].getTypeConverter()"
    - "[com.google.inject.internal.Errors].converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[com.google.inject.internal.Errors].conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
    - "[com.google.inject.internal.Errors].conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
    - "[com.google.inject.spi.InstanceBinding].getInstance()"
    - "[com.google.inject.spi.TypeConverter].convert(java.lang.String,com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 41
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:456"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:457"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:456"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:456"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:463"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:462"
        BranchSideFuncs:
        - "getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
        - "getSource()"
        - "getInstance()"
        - "getTypeLiteral()"
    - Branch String: "com.google.inject.internal.InjectorImpl:471"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:479"
        BranchSideFuncs:
        - "getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
        - "conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
        - "getSource()"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
        - "getInstance()"
        - "getTypeLiteral()"
        - "getTypeConverter()"
        - "converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding)"
        - "conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
        - "convert(java.lang.String,com.google.inject.TypeLiteral)"
        - "toException()"
        - "isInstance(java.lang.Object)"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:478"
        BranchSideFuncs:
        - "getTypeConverter()"
        - "convert(java.lang.String,com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.internal.InjectorImpl:481"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:487"
        BranchSideFuncs:
        - "getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
        - "conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
        - "getSource()"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
        - "getInstance()"
        - "getTypeLiteral()"
        - "getTypeConverter()"
        - "converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding)"
        - "conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
        - "convert(java.lang.String,com.google.inject.TypeLiteral)"
        - "toException()"
        - "isInstance(java.lang.Object)"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:486"
        BranchSideFuncs:
        - "isInstance(java.lang.Object)"
        - "getRawType()"
    - Branch String: "com.google.inject.internal.InjectorImpl:487"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:493"
        BranchSideFuncs:
        - "getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
        - "conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
        - "getSource()"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
        - "getInstance()"
        - "getTypeLiteral()"
        - "getTypeConverter()"
        - "converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding)"
        - "conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
        - "convert(java.lang.String,com.google.inject.TypeLiteral)"
        - "toException()"
        - "isInstance(java.lang.Object)"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:492"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:454,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.InjectorImpl:455,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:456,1"
      Dst: "[com.google.inject.internal.BindingImpl].isConstant()"
    - Src: "com.google.inject.internal.InjectorImpl:463,1"
      Dst: "[com.google.inject.spi.InstanceBinding].getInstance()"
    - Src: "com.google.inject.internal.InjectorImpl:464,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InjectorImpl:467,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:469,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getConverter(java.lang.String,com.google.inject.TypeLiteral,com.google.inject.internal.Errors,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:479,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getTypeConverter()"
    - Src: "com.google.inject.internal.InjectorImpl:479,1"
      Dst: "[com.google.inject.spi.TypeConverter].convert(java.lang.String,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.InjectorImpl:483,1"
      Dst: "[com.google.inject.internal.Errors].converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding)"
    - Src: "com.google.inject.internal.InjectorImpl:484,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:487,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:487,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:489,1"
      Dst: "[com.google.inject.internal.Errors].conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:493,1"
      Dst: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
    - Src: "com.google.inject.internal.InjectorImpl:499,1"
      Dst: "[com.google.inject.internal.Errors].conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].getTypeConverter()"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "com.google.inject.spi.TypeConverter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.Binding,com.google.inject.spi.TypeConverterBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 528
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.Binding"
    - "com.google.inject.spi.TypeConverterBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - "[com.google.inject.util.Providers].of(java.lang.Object)"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:520,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:521,1"
      Dst: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:521,1"
      Dst: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:517,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:524,1"
      Dst: "[com.google.inject.util.Providers].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers].of(java.lang.Object)"
    functionSourceFile: "com.google.inject.util.Providers"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Providers$ConstantProvider].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers:53,1"
      Dst: "[com.google.inject.util.Providers$ConstantProvider].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$ConstantProvider].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.util.Providers$ConstantProvider"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$ConstantProvider:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].initializeBinding(com.google.inject.internal.BindingImpl<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 596
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.BindingImpl<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:592"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:595"
        BranchSideFuncs:
        - "initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:594"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:593,1"
      Dst: "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].initializeJitBinding(com.google.inject.internal.BindingImpl<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 620
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.BindingImpl<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.InjectorJitBindingData].putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ConstructorBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].removeFailedJitBinding(com.google.inject.Binding,com.google.inject.spi.InjectionPoint)"
    - "[java.util.HashSet].<init>()"
    - "[com.google.inject.internal.InjectorImpl].cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
    - "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 24
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:601"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:619"
        BranchSideFuncs:
        - "initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
        - "getKey()"
        - "putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:618"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:610"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:618"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:610"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:602,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl:603,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].putJitBinding(com.google.inject.Key,com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.InjectorImpl:607,1"
      Dst: "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:614,1"
      Dst: "[com.google.inject.internal.InjectorImpl].removeFailedJitBinding(com.google.inject.Binding,com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.InjectorImpl:615,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:615,1"
      Dst: "[com.google.inject.internal.InjectorImpl].cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.InjectorImpl].cleanup(com.google.inject.internal.BindingImpl<?>,java.util.Set<Key<?>>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 656
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.BindingImpl<?>"
    - "java.util.Set<Key<?>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getInternalDependencies(com.google.inject.internal.BindingImpl)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
    - "[com.google.inject.internal.ConstructorBindingImpl].getInternalConstructor()"
    - "[com.google.inject.internal.ConstructorBindingImpl].isInitialized()"
    - "[com.google.inject.internal.InjectorImpl].removeFailedJitBinding(com.google.inject.Binding,com.google.inject.spi.InjectionPoint)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 3
    ICount: 35
    EdgeCount: 250
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:630"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:655"
        BranchSideFuncs:
        - "hasNext()"
        - "getInjectionPoint()"
        - "add(java.lang.Object)"
        - "next()"
        - "iterator()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:654"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:633"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:654"
        BranchSideFuncs:
        - "getExplicitBinding(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:653"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:635"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:634"
        BranchSideFuncs:
        - "cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:633"
        BranchSideFuncs:
        - "getExplicitBinding(com.google.inject.Key)"
        - "getJitBinding(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:637"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:644"
        BranchSideFuncs:
        - "isInitialized()"
        - "getInternalConstructor()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:643"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:640"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:644"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:643"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:644"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:648"
        BranchSideFuncs:
        - "removeFailedJitBinding(com.google.inject.Binding,com.google.inject.spi.InjectionPoint)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:647"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:635"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:654"
        BranchSideFuncs:
        - "cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:653"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:629,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getInternalDependencies(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.InjectorImpl:630,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.InjectorImpl:630,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorImpl:630,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorImpl:631,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl:632,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.InjectorImpl:633,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:634,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:636,1"
      Dst: "[com.google.inject.internal.InjectorImpl].cleanup(com.google.inject.internal.BindingImpl,java.util.Set)"
    - Src: "com.google.inject.internal.InjectorImpl:639,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getInternalConstructor()"
    - Src: "com.google.inject.internal.InjectorImpl:640,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].isInitialized()"
    - Src: "com.google.inject.internal.InjectorImpl:645,1"
      Dst: "[com.google.inject.internal.InjectorImpl].removeFailedJitBinding(com.google.inject.Binding,com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.InjectorImpl:635,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getInternalConstructor()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getInjectionPoint()"
    - "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:163"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:166"
        BranchSideFuncs:
        - "getConstructionProxy()"
        - "getInjectionPoint()"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:164,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:164,1"
      Dst: "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "com.google.inject.internal.ConstructionProxy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].isInitialized()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:157"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].removeFailedJitBinding(com.google.inject.Binding<?>,com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 682
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binding<?>"
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorJitBindingData].addFailedJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.ConstructorInjectorStore].isLoading(com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.InjectorJitBindingData].removeJitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.ConstructorInjectorStore].remove(com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.MembersInjectorStore].remove(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].remove(com.google.inject.Binding)"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 3
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:673"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:674"
        BranchSideFuncs:
        - "removeJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:673"
        BranchSideFuncs:
        - "removeJitBinding(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.InjectorImpl:673"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:676"
        BranchSideFuncs:
        - "removeJitBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:675"
        BranchSideFuncs:
        - "isLoading(com.google.inject.spi.InjectionPoint)"
    - Branch String: "com.google.inject.internal.InjectorImpl:676"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:679"
        BranchSideFuncs:
        - "remove(com.google.inject.spi.InjectionPoint)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:678"
        BranchSideFuncs:
        - "remove(com.google.inject.TypeLiteral)"
        - "getTypeLiteral()"
        - "getKey()"
        - "remove(com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.InjectorImpl:676"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:679"
        BranchSideFuncs:
        - "remove(com.google.inject.spi.InjectionPoint)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:678"
        BranchSideFuncs:
        - "remove(com.google.inject.TypeLiteral)"
        - "getTypeLiteral()"
        - "getKey()"
        - "remove(com.google.inject.Binding)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:660,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl:660,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].addFailedJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:673,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore].isLoading(com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.InjectorImpl:674,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].removeJitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:677,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore].remove(com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.InjectorImpl:679,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:679,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].remove(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.InjectorImpl:680,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].remove(com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore].isLoading(com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].isLoading(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore:47,1"
      Dst: "[com.google.inject.internal.FailableCache].isLoading(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore].remove(com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].remove(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore:66,1"
      Dst: "[com.google.inject.internal.FailableCache].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getInternalDependencies(com.google.inject.internal.BindingImpl<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 684
    functionLinenumberEnd: 691
    functionDepth: 3
    returnType: "java.util.Set<Dependency<?>>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.BindingImpl<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorBindingImpl].getInternalDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getDependencies()"
    - "[com.google.inject.internal.ConstructorBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getDependencies()"
    - "[com.google.inject.spi.ProviderLookup$1].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getDependencies()"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].getDependencies()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.InstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getDependencies()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].getDependencies()"
    - "[com.google.inject.internal.ProviderMethod].getDependencies()"
    - "[com.google.inject.internal.LinkedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.ExposedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].getDependencies()"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.inject.spi.HasDependencies].getDependencies()"
    functionUses: 1
    ICount: 14
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:685"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:687"
        BranchSideFuncs:
        - "getInternalDependencies()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:686"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:687"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:690"
        BranchSideFuncs:
        - "getDependencies()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:689"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:686,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getInternalDependencies()"
    - Src: "com.google.inject.internal.InjectorImpl:688,1"
      Dst: "[com.google.inject.spi.HasDependencies].getDependencies()"
    - Src: "com.google.inject.internal.InjectorImpl:690,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getInternalDependencies()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - "[com.google.inject.internal.ConstructorBindingImpl].getInjectableMembers()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    functionUses: 1
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:173"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:184"
        BranchSideFuncs:
        - "getDeclaringType()"
        - "forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:183"
        BranchSideFuncs:
        - "getInjectableMembers()"
        - "add(java.lang.Object)"
        - "addAll(java.lang.Iterable)"
        - "getConstructor()"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:172,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:174,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:178,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:177,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:176,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:184,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:184,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getInjectableMembers()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:187,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:187,1"
      Dst: "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 1
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getInjectionPoint()"
    - "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    functionUses: 6
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:198"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:198"
        BranchSideFuncs:
        - "getConstructionProxy()"
        - "getInjectionPoint()"
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:197"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:198,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:199,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:199,1"
      Dst: "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getInjectableMembers()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.ConstructorInjector].getInjectableMembers()"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:204"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:204"
        BranchSideFuncs:
        - "getInjectableMembers()"
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:203"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:204,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:205,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].getInjectableMembers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorInjector].getInjectableMembers()"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createUninitializedBinding(com.google.inject.Key<T>,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer<CreationListener>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 705
    functionLinenumberEnd: 738
    functionDepth: 5
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 6
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.internal.Scoping"
    - "java.lang.Object"
    - "com.google.inject.internal.Errors"
    - "boolean"
    - "java.util.function.Consumer<CreationListener>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[java.lang.Class].isArray()"
    - "[java.lang.Class].isEnum()"
    - "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.InjectorImpl].createTypeLiteralBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Annotations].checkForMisplacedScopeAnnotations(java.lang.Class,java.lang.Object,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].createImplementedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ImplementedBy,com.google.inject.internal.Errors,java.util.function.Consumer)"
    - "[com.google.inject.internal.InjectorImpl].createProvidedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ProvidedBy,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ConstructorBindingImpl].create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    functionUses: 2
    ICount: 43
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:711"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:712"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:711"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
    - Branch String: "com.google.inject.internal.InjectorImpl:711"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:716"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:715"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:711"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:716"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:715"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:716"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:723"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl:724"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:731"
        BranchSideFuncs:
        - "createImplementedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ImplementedBy,com.google.inject.internal.Errors,java.util.function.Consumer)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:730"
        BranchSideFuncs:
        - "getAnnotation(java.lang.Class)"
    - Branch String: "com.google.inject.internal.InjectorImpl:732"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:737"
        BranchSideFuncs:
        - "createProvidedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ProvidedBy,com.google.inject.internal.Errors)"
        - "checkForMisplacedScopeAnnotations(java.lang.Class,java.lang.Object,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:736"
        BranchSideFuncs:
        - "create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    - Branch String: "com.google.inject.internal.InjectorImpl:737"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:736"
        BranchSideFuncs:
        - "create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    - Branch String: "com.google.inject.internal.InjectorImpl:737"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:736"
        BranchSideFuncs:
        - "create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:706,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:706,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:708,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:711,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "com.google.inject.internal.InjectorImpl:711,1"
      Dst: "[java.lang.Class].isEnum()"
    - Src: "com.google.inject.internal.InjectorImpl:712,1"
      Dst: "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - Src: "com.google.inject.internal.InjectorImpl:712,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:719,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createTypeLiteralBinding(com.google.inject.Key,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:725,1"
      Dst: "[com.google.inject.internal.Annotations].checkForMisplacedScopeAnnotations(java.lang.Class,java.lang.Object,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:726,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createImplementedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ImplementedBy,com.google.inject.internal.Errors,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.InjectorImpl:734,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createProvidedByBinding(com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.ProvidedBy,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:737,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.Annotations].checkForMisplacedScopeAnnotations(java.lang.Class,java.lang.Object,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 373
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.Classes].isConcrete(java.lang.Class)"
    - "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - "[com.google.inject.internal.Annotations].containsComponentAnnotation(java.lang.'annotation'.Annotation[])"
    - "[java.lang.Class].getAnnotations()"
    - "[com.google.inject.internal.Errors].scopeAnnotationOnAbstractType(java.lang.Class,java.lang.Class,java.lang.Object)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:362"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:366"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:365"
        BranchSideFuncs:
        - "findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - Branch String: "com.google.inject.internal.Annotations:367"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:371"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:369"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:372"
        BranchSideFuncs:
        - "scopeAnnotationOnAbstractType(java.lang.Class,java.lang.Class,java.lang.Object)"
        - "withSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Annotations:371"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:362,1"
      Dst: "[com.google.inject.internal.util.Classes].isConcrete(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:366,1"
      Dst: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:369,1"
      Dst: "[java.lang.Class].getAnnotations()"
    - Src: "com.google.inject.internal.Annotations:369,1"
      Dst: "[com.google.inject.internal.Annotations].containsComponentAnnotation(java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.internal.Annotations:370,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:370,1"
      Dst: "[com.google.inject.internal.Errors].scopeAnnotationOnAbstractType(java.lang.Class,java.lang.Class,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 3
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
    - "[java.lang.Class].getAnnotations()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:181,1"
      Dst: "[java.lang.Class].getAnnotations()"
    - Src: "com.google.inject.internal.Annotations:181,1"
      Dst: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.Annotations].isScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Errors].duplicateScopeAnnotations(java.lang.Class,java.lang.Class)"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 2
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:189"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:200"
        BranchSideFuncs:
        - "isScopeAnnotation(java.lang.Class)"
        - "annotationType()"
      - BranchSide: "com.google.inject.internal.Annotations:199"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:191"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:187"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:186"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:192"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:195"
        BranchSideFuncs:
        - "duplicateScopeAnnotations(java.lang.Class,java.lang.Class)"
      - BranchSide: "com.google.inject.internal.Annotations:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:190,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.Annotations:191,1"
      Dst: "[com.google.inject.internal.Annotations].isScopeAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:193,1"
      Dst: "[com.google.inject.internal.Errors].duplicateScopeAnnotations(java.lang.Class,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Annotations].isScopeAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 352
    functionLinenumberEnd: 354
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations$AnnotationChecker].hasAnnotations(java.lang.Class)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:353,1"
      Dst: "[com.google.inject.internal.Annotations$AnnotationChecker].hasAnnotations(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].containsComponentAnnotation(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:204"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:211"
        BranchSideFuncs:
        - "annotationType()"
        - "equals(java.lang.Object)"
        - "getSimpleName()"
      - BranchSide: "com.google.inject.internal.Annotations:210"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:206"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:204"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:206,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.Annotations:206,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.internal.Annotations:206,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].createTypeLiteralBinding(com.google.inject.Key<TypeLiteral<T>>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 753
    functionLinenumberEnd: 780
    functionDepth: 11
    returnType: "com.google.inject.internal.BindingImpl<TypeLiteral<T>>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<TypeLiteral<T>>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.Errors].cannotInjectRawTypeLiteral()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.inject.internal.Errors].cannotInjectTypeLiteralOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    functionUses: 1
    ICount: 31
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:755"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:759"
        BranchSideFuncs:
        - "cannotInjectRawTypeLiteral()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:758"
        BranchSideFuncs:
        - "getActualTypeArguments()"
    - Branch String: "com.google.inject.internal.InjectorImpl:764"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:770"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Initializable)"
        - "of(java.lang.Object)"
        - "get(java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.InjectorImpl:764"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:770"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Initializable)"
        - "of(java.lang.Object)"
        - "get(java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.InjectorImpl:764"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:770"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Initializable)"
        - "of(java.lang.Object)"
        - "get(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:754,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:754,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.InjectorImpl:756,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectRawTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:756,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:760,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.internal.InjectorImpl:767,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectTypeLiteralOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.InjectorImpl:771,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.InjectorImpl:773,1"
      Dst: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:773,1"
      Dst: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - Src: "com.google.inject.internal.InjectorImpl:779,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InjectorImpl:779,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Errors].cannotInjectRawTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:580,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectTypeLiteralOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:576,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createProvidedByBinding(com.google.inject.Key<T>,com.google.inject.internal.Scoping,com.google.inject.ProvidedBy,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 785
    functionLinenumberEnd: 823
    functionDepth: 11
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 4
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.ProvidedBy"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.Errors].recursiveProviderType()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.Scoping].isExplicitlyScoped()"
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - "[com.google.inject.internal.Scoping].makeInjectable(com.google.inject.internal.Scoping,com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Scoping].forAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].<init>(java.lang.Class,java.lang.Class,com.google.inject.Key)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].createWithInitializer(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].setProvisionListenerCallback(com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.ProvidedBy].value()"
    functionUses: 1
    ICount: 30
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:790"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:795"
        BranchSideFuncs:
        - "recursiveProviderType()"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:794"
        BranchSideFuncs:
        - "isExplicitlyScoped()"
    - Branch String: "com.google.inject.internal.InjectorImpl:795"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:808"
        BranchSideFuncs:
        - "findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
        - "size()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:807"
        BranchSideFuncs:
        - "setProvisionListenerCallback(com.google.inject.internal.ProvisionListenerStackCallback)"
        - "<init>(java.lang.Class,java.lang.Class,com.google.inject.Key)"
        - "get(java.lang.Class)"
        - "createWithInitializer(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
        - "scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
        - "get(com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.InjectorImpl:798"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:802"
        BranchSideFuncs:
        - "throwIfNewErrors(int)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:786,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:786,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:787,1"
      Dst: "[com.google.inject.ProvidedBy].value()"
    - Src: "com.google.inject.internal.InjectorImpl:791,1"
      Dst: "[com.google.inject.internal.Errors].recursiveProviderType()"
    - Src: "com.google.inject.internal.InjectorImpl:791,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:795,1"
      Dst: "[com.google.inject.internal.Scoping].isExplicitlyScoped()"
    - Src: "com.google.inject.internal.InjectorImpl:796,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.InjectorImpl:797,1"
      Dst: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:801,1"
      Dst: "[com.google.inject.internal.Scoping].forAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:801,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:800,1"
      Dst: "[com.google.inject.internal.Scoping].makeInjectable(com.google.inject.internal.Scoping,com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:803,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.InjectorImpl:808,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:809,1"
      Dst: "[com.google.inject.internal.ProvidedByInternalFactory].<init>(java.lang.Class,java.lang.Class,com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:817,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.InjectorImpl:813,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].createWithInitializer(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    - Src: "com.google.inject.internal.InjectorImpl:821,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.InjectorImpl:821,1"
      Dst: "[com.google.inject.internal.ProvidedByInternalFactory].setProvisionListenerCallback(com.google.inject.internal.ProvisionListenerStackCallback)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Errors].recursiveProviderType()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:275,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidedByInternalFactory].<init>(java.lang.Class,java.lang.Class,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.ProvidedByInternalFactory"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:42,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].createImplementedByBinding(com.google.inject.Key<T>,com.google.inject.internal.Scoping,com.google.inject.ImplementedBy,com.google.inject.internal.Errors,java.util.function.Consumer<CreationListener>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 832
    functionLinenumberEnd: 860
    functionDepth: 11
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 5
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.ImplementedBy"
    - "com.google.inject.internal.Errors"
    - "java.util.function.Consumer<CreationListener>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.Errors].recursiveImplementationType()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.inject.internal.Errors].notASubtype(java.lang.Class,java.lang.Class)"
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.FactoryProxy].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEachEntry_0__66].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$2$1].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].accept(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$lambda_forEach_0__42].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_forEach_0__46].accept(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes$lambda_toString_1__14].accept(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].accept(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$3$1].accept(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].accept(java.lang.Object)"
    - "[com.google.common.collect.Iterables$4$lambda_forEach_0__90].accept(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_forEach_0__48].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].accept(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_forEach_1__84].accept(java.lang.Object)"
    - "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].accept(java.lang.Object)"
    - "[com.google.common.collect.Iterables$5$lambda_forEach_0__89].accept(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap$lambda_forEach_0__83].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEach_1__47].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].accept(java.lang.Object)"
    - "[com.google.common.collect.Streams$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.CollectSpliterators$1Splitr].accept(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$add__169].accept(java.lang.Object)"
    - "[com.google.inject.internal.ScopeNotFoundError$add__146].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].accept(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView$lambda_forEach_0__88].accept(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].accept(java.lang.Object)"
    - "[java.util.stream.Collectors$1OptionalBox].accept(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.ImplementedBy].value()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:837"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:842"
        BranchSideFuncs:
        - "recursiveImplementationType()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:841"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "com.google.inject.internal.InjectorImpl:842"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:850"
        BranchSideFuncs:
        - "notASubtype(java.lang.Class,java.lang.Class)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.InjectorImpl:849"
        BranchSideFuncs:
        - "get(java.lang.Class)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
        - "accept(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:833,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.InjectorImpl:833,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.InjectorImpl:834,1"
      Dst: "[com.google.inject.ImplementedBy].value()"
    - Src: "com.google.inject.internal.InjectorImpl:838,1"
      Dst: "[com.google.inject.internal.Errors].recursiveImplementationType()"
    - Src: "com.google.inject.internal.InjectorImpl:838,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.InjectorImpl:842,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:843,1"
      Dst: "[com.google.inject.internal.Errors].notASubtype(java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:850,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:852,1"
      Dst: "[com.google.inject.internal.FactoryProxy].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:854,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:859,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.InjectorImpl:859,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].recursiveImplementationType()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:269,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.FactoryProxy].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.FactoryProxy"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "com.google.inject.Key"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.FactoryProxy:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getInternalFactory(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 995
    functionLinenumberEnd: 997
    functionDepth: 8
    returnType: "com.google.inject.internal.InternalFactory"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.InjectorImpl$JitLimitation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:996,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:996,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1000
    functionLinenumberEnd: 1002
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1001,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getAllBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1005
    functionLinenumberEnd: 1012
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - "[com.google.common.collect.ImmutableMap$Builder].<init>()"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].putAll(java.util.Map)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].putAll(java.util.Map)"
    - "[com.google.common.collect.ImmutableMap$Builder].putAll(java.util.Map)"
    - "[com.google.inject.internal.InjectorJitBindingData].getJitBindings()"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    functionUses: 3
    ICount: 18
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1006,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].lock()"
    - Src: "com.google.inject.internal.InjectorImpl:1007,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].<init>()"
    - Src: "com.google.inject.internal.InjectorImpl:1008,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1008,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].putAll(java.util.Map)"
    - Src: "com.google.inject.internal.InjectorImpl:1009,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].getJitBindings()"
    - Src: "com.google.inject.internal.InjectorImpl:1010,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getScopeBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getScopes()"
    - "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1016,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScopes()"
    - Src: "com.google.inject.internal.InjectorImpl:1016,1"
      Dst: "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getScopes()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.spi.ScopeBinding].getScope()"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:250"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:253"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorBindingData:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:249,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.InjectorBindingData:250,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.InjectorBindingData:250,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.InjectorBindingData:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorBindingData:250,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorBindingData:251,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.InjectorBindingData:251,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.InjectorBindingData:251,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getScope()"
    - Src: "com.google.inject.internal.InjectorBindingData:251,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorBindingData:253,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ScopeBinding].getScope()"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getTypeConverterBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1021,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1021,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "java.lang.Iterable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getElements()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.inject.internal.InjectorImpl].getAllBindings()"
    - "[java.util.Map].values()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[com.google.inject.internal.InjectorBindingData].getProviderLookupsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getScopeBindingsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindingsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindingsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getScannerBindingsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getStaticInjectionRequestsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getMembersInjectorLookupsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getInjectionRequestsThisLevel()"
    - "[com.google.inject.internal.InjectorBindingData].getInterceptorBindingsThisLevel()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1026,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.InjectorImpl:1027,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getAllBindings()"
    - Src: "com.google.inject.internal.InjectorImpl:1027,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.InjectorImpl:1027,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorImpl:1028,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getProviderLookupsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1029,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1030,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScopeBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1031,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1032,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1033,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScannerBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1034,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getStaticInjectionRequestsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1035,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getMembersInjectorLookupsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1036,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getInjectionRequestsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1037,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getInterceptorBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1039,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getProviderLookupsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getScopeBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:147,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getTypeListenerBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:209,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getProvisionListenerBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:227,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getScannerBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:245,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getStaticInjectionRequestsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getMembersInjectorLookupsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getInjectionRequestsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getInterceptorBindingsThisLevel()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:191,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getAllMembersInjectorInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorStore].getAllInjectionPoints()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$contains__211].bootstrap$(java.util.Set)"
    - "[com.google.common.collect.Multimaps].filterKeys(com.google.common.collect.ListMultimap,com.google.common.base.Predicate)"
    - "[com.google.common.collect.ImmutableListMultimap].copyOf(com.google.common.collect.Multimap)"
    - "[com.google.common.collect.ImmutableMultimap].asMap()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1052,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].getAllInjectionPoints()"
    - Src: "com.google.inject.internal.InjectorImpl:1053,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1053,1"
      Dst: "[com.google.inject.internal.InjectorImpl$contains__211].bootstrap$(java.util.Set)"
    - Src: "com.google.inject.internal.InjectorImpl:1051,1"
      Dst: "[com.google.common.collect.Multimaps].filterKeys(com.google.common.collect.ListMultimap,com.google.common.base.Predicate)"
    - Src: "com.google.inject.internal.InjectorImpl:1050,1"
      Dst: "[com.google.common.collect.ImmutableListMultimap].copyOf(com.google.common.collect.Multimap)"
    - Src: "com.google.inject.internal.InjectorImpl:1054,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].asMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].getAllInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableListMultimap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].asMap()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.internal.MembersInjectorStore$getKey__215].bootstrap$()"
    - "[com.google.inject.internal.MembersInjectorStore$lambda_getAllInjectionPoints_0__216].bootstrap$()"
    - "[com.google.common.collect.ImmutableListMultimap].flatteningToImmutableListMultimap(java.util.function.Function,java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:142,1"
      Dst: "[com.google.inject.internal.FailableCache].asMap()"
    - Src: "com.google.inject.internal.MembersInjectorStore:142,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.MembersInjectorStore:142,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.MembersInjectorStore:142,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore$getKey__215].bootstrap$()"
    - Src: "com.google.inject.internal.MembersInjectorStore:142,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore$lambda_getAllInjectionPoints_0__216].bootstrap$()"
    - Src: "com.google.inject.internal.MembersInjectorStore:144,1"
      Dst: "[com.google.common.collect.ImmutableListMultimap].flatteningToImmutableListMultimap(java.util.function.Function,java.util.function.Function)"
    - Src: "com.google.inject.internal.MembersInjectorStore:143,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List<Dependency<?>>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1060
    functionLinenumberEnd: 1078
    functionDepth: 3
    returnType: "com.google.inject.internal.SingleParameterInjector<?>[]"
    argCount: 2
    argTypes:
    - "java.util.List<Dependency<?>>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.InjectorImpl].createParameterInjector(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 6
    ICount: 25
    EdgeCount: 215
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl:1061"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:1065"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorImpl:1064"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "size()"
    - Branch String: "com.google.inject.internal.InjectorImpl:1068"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl:1076"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "createParameterInjector(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
        - "next()"
        - "withSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl:1075"
        BranchSideFuncs:
        - "throwIfNewErrors(int)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1061,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.InjectorImpl:1065,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.InjectorImpl:1066,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.InjectorImpl:1068,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.InjectorImpl:1068,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorImpl:1068,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorImpl:1070,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1070,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createParameterInjector(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:1076,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl].createParameterInjector(com.google.inject.spi.Dependency<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1082
    functionLinenumberEnd: 1085
    functionDepth: 8
    returnType: "com.google.inject.internal.SingleParameterInjector<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Dependency<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.internal.SingleParameterInjector].<init>(com.google.inject.spi.Dependency,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1083,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl:1083,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:1084,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].<init>(com.google.inject.spi.Dependency,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleParameterInjector].<init>(com.google.inject.spi.Dependency,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.SingleParameterInjector"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Dependency"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleParameterInjector:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.SingleParameterInjector:33,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.SingleParameterInjector:34,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].injectMembers(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.internal.InjectorImpl].getMembersInjector(java.lang.Class)"
    - "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1108,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.InjectorImpl:1108,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getMembersInjector(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:1109,1"
      Dst: "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getMembersInjector(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.MembersInjector<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1114,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1115,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1117,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1119,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:1122,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.InjectorImpl:1122,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:1122,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.InjectorImpl:1122,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getMembersInjector(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.internal.InjectorImpl].getMembersInjector(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1129,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:1129,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getMembersInjector(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getProvider(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1133
    functionLinenumberEnd: 1135
    functionDepth: 0
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.InjectorImpl].getProvider(com.google.inject.Key)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1134,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1134,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:1134,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getProviderOrThrow(com.google.inject.spi.Dependency<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1138
    functionLinenumberEnd: 1144
    functionDepth: 8
    returnType: "com.google.inject.Provider<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Dependency<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.InjectorImpl$1].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,com.google.inject.spi.Dependency)"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1139,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl:1140,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.InjectorImpl:1141,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.InjectorImpl:1143,1"
      Dst: "[com.google.inject.internal.InjectorImpl$1].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,com.google.inject.spi.Dependency)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$1].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$1"
    linkageType: ""
    functionLinenumber: 1142
    functionLinenumberEnd: 1144
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$1:1143,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getProvider(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1165
    functionLinenumberEnd: 1176
    functionDepth: 3
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].getProviderOrThrow(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1166,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1167,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1169,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:1169,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProviderOrThrow(com.google.inject.spi.Dependency,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:1170,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.InjectorImpl:1174,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.InjectorImpl:1174,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectorImpl:1174,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.InjectorImpl:1174,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getInstance(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getProvider(com.google.inject.Key)"
    - "[com.google.inject.Provider].get()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1181,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl:1181,1"
      Dst: "[com.google.inject.Provider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getInstance(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1185
    functionLinenumberEnd: 1187
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    - "[com.google.inject.internal.InjectorImpl$1].get()"
    - "[com.google.inject.spi.ProviderLookup$1].get()"
    - "[com.google.inject.internal.SingletonScope$1].get()"
    - "[com.google.inject.util.Providers$ConstantProvider].get()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get()"
    - "[com.google.inject.internal.InjectorImpl].getProvider(java.lang.Class)"
    - "[com.google.inject.Provider].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1186,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getProvider(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:1186,1"
      Dst: "[com.google.inject.Provider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].getLocalContext()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1203
    functionLinenumberEnd: 1205
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1204,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 1239
    functionLinenumberEnd: 1243
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - "[com.google.common.collect.AbstractBiMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].values()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryBiMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.Hashtable].values()"
    - "[com.google.common.collect.CompactHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[com.google.common.collect.EnumBiMap].values()"
    - "[com.google.common.collect.HashBiMap$Inverse].values()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].values()"
    - "[com.google.common.collect.ImmutableMap].values()"
    - "[com.google.common.collect.Maps$DescendingMap].values()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].values()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].values()"
    - "[com.google.common.collect.EnumHashBiMap].values()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].values()"
    - "[java.util.HashMap].values()"
    - "[com.google.common.collect.ForwardingMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedBiMap].values()"
    - "[java.util.EnumMap].values()"
    - "[com.google.common.collect.ImmutableBiMap].values()"
    - "[com.google.common.cache.LocalCache].values()"
    - "[com.google.common.collect.AbstractBiMap$Inverse].values()"
    - "[com.google.common.collect.MapMakerInternalMap].values()"
    - "[java.util.TreeMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.Properties].values()"
    - "[com.google.common.collect.HashBiMap].values()"
    - "[java.security.Provider].values()"
    - "[com.google.common.collect.ImmutableSortedMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[java.util.Map].values()"
    functionUses: 19
    ICount: 8
    EdgeCount: 40
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:1240,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl:1241,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBindingsThisLevel()"
    - Src: "com.google.inject.internal.InjectorImpl:1241,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.InjectorImpl:1241,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl:1242,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl].lambda$createJustInTimeBinding$0(com.google.inject.internal.Errors,com.google.inject.internal.CreationListener)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl"
    linkageType: ""
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.CreationListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ExposedKeyFactory].notify(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.BoundProviderFactory].notify(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.FactoryProxy].notify(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.CreationListener].notify(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl:988,1"
      Dst: "[com.google.inject.internal.CreationListener].notify(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.GlueException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.aop.GlueException"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.GlueException:22,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ListenerBindingProcessor].visit(com.google.inject.spi.TypeListenerBinding)"
    functionSourceFile: "com.google.inject.internal.ListenerBindingProcessor"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.TypeListenerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].addTypeListener(com.google.inject.spi.TypeListenerBinding)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ListenerBindingProcessor:35,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ListenerBindingProcessor:35,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addTypeListener(com.google.inject.spi.TypeListenerBinding)"
    - Src: "com.google.inject.internal.ListenerBindingProcessor:36,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].addTypeListener(com.google.inject.spi.TypeListenerBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.TypeListenerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:195,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ListenerBindingProcessor].visit(com.google.inject.spi.ProvisionListenerBinding)"
    functionSourceFile: "com.google.inject.internal.ListenerBindingProcessor"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProvisionListenerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].addProvisionListener(com.google.inject.spi.ProvisionListenerBinding)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ListenerBindingProcessor:41,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ListenerBindingProcessor:41,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addProvisionListener(com.google.inject.spi.ProvisionListenerBinding)"
    - Src: "com.google.inject.internal.ListenerBindingProcessor:42,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].addProvisionListener(com.google.inject.spi.ProvisionListenerBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProvisionListenerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:213,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].<init>()"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "com.google.inject.Key<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:73"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:72"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "getTypeLiteral()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:70,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.MoreTypes:73,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.MoreTypes:73,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 124
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.Errors].keyNotFullySpecified(com.google.inject.TypeLiteral)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    functionUses: 4
    ICount: 30
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:96"
        BranchSideFuncs:
        - "<init>()"
        - "getMessages()"
        - "keyNotFullySpecified(com.google.inject.TypeLiteral)"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.MoreTypes:95"
        BranchSideFuncs:
        - "getRawType()"
    - Branch String: "com.google.inject.internal.MoreTypes:96"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:109"
        BranchSideFuncs:
        - "getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
        - "providerOf(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes:108"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.internal.MoreTypes:110"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:115"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:114"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "com.google.inject.internal.MoreTypes:115"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:122"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:121"
        BranchSideFuncs:
        - "getType()"
        - "get(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:89,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.MoreTypes:90,1"
      Dst: "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:91,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.MoreTypes:91,1"
      Dst: "[com.google.inject.internal.Errors].keyNotFullySpecified(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MoreTypes:92,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.MoreTypes:92,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - Src: "com.google.inject.internal.MoreTypes:96,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.MoreTypes:104,1"
      Dst: "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    - Src: "com.google.inject.internal.MoreTypes:104,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:104,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes:109,1"
      Dst: "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:115,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].hashCodeOrZero(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].hashCode()"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.internal.UniqueAnnotations$1].hashCode()"
    - "[com.google.common.collect.Cut$BelowAll].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap].hashCode()"
    - "[com.google.common.hash.SipHashFunction].hashCode()"
    - "[java.util.Hashtable$Entry].hashCode()"
    - "[java.time.ZoneOffset].hashCode()"
    - "[java.lang.Runtime$Version].hashCode()"
    - "[com.google.common.collect.ImmutableMap].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.collect.RegularImmutableSet].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Exports].hashCode()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].hashCode()"
    - "[com.google.common.base.Functions$SupplierFunction].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[com.google.common.base.Functions$ForMapWithDefault].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.common.hash.BloomFilter].hashCode()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].hashCode()"
    - "[com.google.common.collect.SingletonImmutableSet].hashCode()"
    - "[com.google.common.collect.TreeBasedTable].hashCode()"
    - "[com.google.common.collect.LexicographicalOrdering].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Recipe].hashCode()"
    - "[java.net.InterfaceAddress].hashCode()"
    - "[com.google.common.base.Predicates$CompositionPredicate].hashCode()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].hashCode()"
    - "[java.text.MessageFormat].hashCode()"
    - "[com.google.common.graph.ElementOrder].hashCode()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].hashCode()"
    - "[java.util.Hashtable].hashCode()"
    - "[com.google.common.primitives.ImmutableDoubleArray].hashCode()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].hashCode()"
    - "[com.google.common.collect.AbstractMultimap].hashCode()"
    - "[com.google.common.collect.AbstractMultiset].hashCode()"
    - "[com.google.common.collect.ByFunctionOrdering].hashCode()"
    - "[java.util.jar.Attributes$Name].hashCode()"
    - "[java.text.AttributedCharacterIterator$Attribute].hashCode()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].hashCode()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].hashCode()"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].hashCode()"
    - "[com.google.common.collect.ImmutableTable].hashCode()"
    - "[java.security.Timestamp].hashCode()"
    - "[java.util.jar.Attributes].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].hashCode()"
    - "[com.google.common.base.Functions$ConstantFunction].hashCode()"
    - "[com.google.inject.internal.InstanceBindingImpl].hashCode()"
    - "[com.google.common.collect.Multimaps$MapMultimap].hashCode()"
    - "[java.util.Vector].hashCode()"
    - "[java.lang.invoke.LambdaForm].hashCode()"
    - "[com.google.common.net.HostAndPort].hashCode()"
    - "[com.google.common.math.PairedStats].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder].hashCode()"
    - "[java.time.LocalDateTime].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[java.time.temporal.ValueRange].hashCode()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].hashCode()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].hashCode()"
    - "[com.google.inject.multibindings.Multibinder].hashCode()"
    - "[java.time.zone.ZoneOffsetTransitionRule].hashCode()"
    - "[sun.nio.ch.FileKey].hashCode()"
    - "[com.google.common.collect.Interners$InternerFunction].hashCode()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].hashCode()"
    - "[java.security.BasicPermission].hashCode()"
    - "[com.google.inject.multibindings.MapBinder].hashCode()"
    - "[com.google.common.collect.TreeRangeMap].hashCode()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].hashCode()"
    - "[java.util.AbstractList].hashCode()"
    - "[com.google.common.primitives.ImmutableLongArray].hashCode()"
    - "[java.util.ResourceBundle$CacheKey].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[com.google.common.collect.ImmutableMultimap].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].hashCode()"
    - "[com.google.common.collect.TreeMultimap].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].hashCode()"
    - "[java.text.DateFormatSymbols].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].hashCode()"
    - "[com.google.common.collect.ForwardingMap].hashCode()"
    - "[com.google.common.collect.RegularContiguousSet].hashCode()"
    - "[com.google.common.collect.ExplicitOrdering].hashCode()"
    - "[com.google.common.base.Absent].hashCode()"
    - "[com.google.common.reflect.Parameter].hashCode()"
    - "[sun.util.calendar.Era].hashCode()"
    - "[sun.nio.fs.UnixFileStore].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].hashCode()"
    - "[com.google.common.collect.AbstractTable].hashCode()"
    - "[java.lang.ProcessHandleImpl].hashCode()"
    - "[com.google.common.graph.AbstractNetwork].hashCode()"
    - "[com.google.common.collect.ForwardingList].hashCode()"
    - "[java.security.CodeSigner].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[java.nio.FloatBuffer].hashCode()"
    - "[com.google.common.net.MediaType].hashCode()"
    - "[com.google.common.reflect.Invokable].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.spi.Message].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[java.io.FilePermission].hashCode()"
    - "[com.google.common.reflect.TypeParameter].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].hashCode()"
    - "[com.google.inject.name.NamedImpl].hashCode()"
    - "[com.google.common.hash.Murmur3_128HashFunction].hashCode()"
    - "[java.lang.invoke.LambdaForm$Name].hashCode()"
    - "[java.util.OptionalDouble].hashCode()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].hashCode()"
    - "[java.nio.file.attribute.AclEntry].hashCode()"
    - "[java.util.BitSet].hashCode()"
    - "[java.security.AllPermission].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[com.google.common.reflect.TypeToken].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Version].hashCode()"
    - "[com.google.common.net.HostSpecifier].hashCode()"
    - "[java.util.IdentityHashMap].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.ProviderMethod].hashCode()"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].hashCode()"
    - "[java.util.WeakHashMap$Entry].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[com.google.common.math.Stats].hashCode()"
    - "[com.google.inject.internal.RealMapBinder].hashCode()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].hashCode()"
    - "[javax.crypto.spec.SecretKeySpec].hashCode()"
    - "[com.google.common.collect.ForwardingMultiset].hashCode()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].hashCode()"
    - "[com.google.common.collect.HashBasedTable].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].hashCode()"
    - "[java.lang.reflect.Parameter].hashCode()"
    - "[com.google.inject.TypeLiteral].hashCode()"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].hashCode()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].hashCode()"
    - "[com.google.common.collect.ForwardingMultimap].hashCode()"
    - "[com.google.common.collect.EmptyContiguousSet].hashCode()"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].hashCode()"
    - "[com.google.inject.spi.InjectionRequest].hashCode()"
    - "[javax.crypto.CryptoPermission].hashCode()"
    - "[com.google.common.base.Predicates$NotPredicate].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].hashCode()"
    - "[com.google.common.collect.LinkedListMultimap].hashCode()"
    - "[com.google.inject.internal.ConstructorBindingImpl].hashCode()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].hashCode()"
    - "[com.google.common.base.Functions$PredicateFunction].hashCode()"
    - "[java.text.NumberFormat].hashCode()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].hashCode()"
    - "[sun.util.calendar.CalendarDate].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[com.google.common.collect.AbstractMapEntry].hashCode()"
    - "[java.security.cert.Certificate].hashCode()"
    - "[com.google.common.eventbus.Subscriber].hashCode()"
    - "[java.time.zone.ZoneOffsetTransition].hashCode()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].hashCode()"
    - "[com.google.inject.internal.RealMultibinder].hashCode()"
    - "[com.google.common.collect.Maps$BiMapConverter].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[java.util.Locale].hashCode()"
    - "[java.util.HashMap$Node].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[com.google.inject.util.Providers$ConstantProvider].hashCode()"
    - "[com.google.common.primitives.UnsignedLong].hashCode()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[java.nio.IntBuffer].hashCode()"
    - "[java.time.chrono.AbstractChronology].hashCode()"
    - "[java.lang.Package].hashCode()"
    - "[java.nio.LongBuffer].hashCode()"
    - "[com.google.common.base.Predicates$AndPredicate].hashCode()"
    - "[com.google.inject.internal.Scoping].hashCode()"
    - "[com.google.inject.internal.Indexer$IndexedBinding].hashCode()"
    - "[java.net.SocketPermission].hashCode()"
    - "[com.google.common.collect.Cut$AboveValue].hashCode()"
    - "[com.google.inject.spi.MembersInjectorLookup].hashCode()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].hashCode()"
    - "[com.google.common.base.Present].hashCode()"
    - "[java.util.Date].hashCode()"
    - "[com.google.common.collect.ImmutableRangeMap].hashCode()"
    - "[java.util.logging.Level].hashCode()"
    - "[java.net.Inet4Address].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].hashCode()"
    - "[com.google.common.collect.Count].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Provides].hashCode()"
    - "[com.google.common.graph.EndpointPair$Ordered].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].hashCode()"
    - "[com.google.common.collect.ForwardingTable].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.io.File].hashCode()"
    - "[java.util.EnumMap].hashCode()"
    - "[java.net.NetworkInterface].hashCode()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].hashCode()"
    - "[java.time.zone.ZoneRules].hashCode()"
    - "[com.google.common.primitives.UnsignedInteger].hashCode()"
    - "[java.security.cert.CertPath].hashCode()"
    - "[com.google.common.collect.GeneralRange].hashCode()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].hashCode()"
    - "[javax.security.auth.Subject].hashCode()"
    - "[java.time.format.DecimalStyle].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.common.base.Predicates$OrPredicate].hashCode()"
    - "[com.google.inject.spi.Dependency].hashCode()"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].hashCode()"
    - "[java.time.OffsetTime].hashCode()"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].hashCode()"
    - "[com.google.common.collect.NullsFirstOrdering].hashCode()"
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].hashCode()"
    - "[com.google.common.collect.CompoundOrdering].hashCode()"
    - "[java.lang.StackTraceElement].hashCode()"
    - "[java.time.ZoneId].hashCode()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].hashCode()"
    - "[java.util.OptionalInt].hashCode()"
    - "[java.lang.Thread$WeakClassKey].hashCode()"
    - "[java.net.HttpCookie].hashCode()"
    - "[java.nio.file.attribute.FileTime].hashCode()"
    - "[java.util.PropertyPermission].hashCode()"
    - "[com.google.common.collect.Cut$AboveAll].hashCode()"
    - "[com.google.common.collect.Tables$AbstractCell].hashCode()"
    - "[com.google.common.collect.ForwardingMapEntry].hashCode()"
    - "[com.google.common.collect.ImmutableMapEntrySet].hashCode()"
    - "[com.google.common.collect.RegularImmutableBiMap].hashCode()"
    - "[java.lang.module.ModuleDescriptor].hashCode()"
    - "[java.util.jar.Manifest].hashCode()"
    - "[java.text.DateFormat].hashCode()"
    - "[java.util.zip.ZipFile$Source$Key].hashCode()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].hashCode()"
    - "[com.google.common.collect.ImmutableList].hashCode()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].hashCode()"
    - "[java.util.zip.ZipEntry].hashCode()"
    - "[java.time.LocalDate].hashCode()"
    - "[java.util.OptionalLong].hashCode()"
    - "[java.math.BigDecimal].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Requires].hashCode()"
    - "[com.google.inject.Key].hashCode()"
    - "[com.google.common.collect.ComparatorOrdering].hashCode()"
    - "[sun.util.locale.BaseLocale].hashCode()"
    - "[java.security.CodeSource].hashCode()"
    - "[java.util.AbstractMap].hashCode()"
    - "[com.google.common.cache.CacheStats].hashCode()"
    - "[java.text.DecimalFormatSymbols].hashCode()"
    - "[java.math.MathContext].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].hashCode()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].hashCode()"
    - "[java.nio.charset.Charset].hashCode()"
    - "[com.google.common.base.PairwiseEquivalence].hashCode()"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].hashCode()"
    - "[com.google.common.base.Predicates$InPredicate].hashCode()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].hashCode()"
    - "[com.google.common.collect.ImmutableEnumSet].hashCode()"
    - "[com.google.common.collect.NullsLastOrdering].hashCode()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].hashCode()"
    - "[java.util.logging.LogManager$CloseOnReset].hashCode()"
    - "[com.google.common.base.Suppliers$SupplierComposition].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].hashCode()"
    - "[com.google.common.hash.HashCode].hashCode()"
    - "[java.time.Clock].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.lang.invoke.MethodType].hashCode()"
    - "[java.nio.ByteBuffer].hashCode()"
    - "[java.util.AbstractSet].hashCode()"
    - "[java.util.ArrayList].hashCode()"
    - "[sun.util.locale.BaseLocale$Key].hashCode()"
    - "[com.google.common.graph.EndpointPair$Unordered].hashCode()"
    - "[com.google.inject.internal.UntargettedBindingImpl].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[com.google.common.collect.Range].hashCode()"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].hashCode()"
    - "[com.google.common.collect.ImmutableMultiset].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Key].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].hashCode()"
    - "[com.google.inject.spi.ProviderLookup].hashCode()"
    - "[java.time.ZonedDateTime].hashCode()"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[com.google.common.reflect.AbstractInvocationHandler].hashCode()"
    - "[com.google.common.base.FunctionalEquivalence].hashCode()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].hashCode()"
    - "[com.google.common.collect.AbstractRangeSet].hashCode()"
    - "[java.time.LocalTime].hashCode()"
    - "[java.util.Optional].hashCode()"
    - "[com.google.common.collect.Multisets$AbstractEntry].hashCode()"
    - "[com.google.common.reflect.Types$TypeVariableImpl].hashCode()"
    - "[com.google.common.net.InternetDomainName].hashCode()"
    - "[com.google.common.graph.AbstractGraph].hashCode()"
    - "[com.google.common.base.Enums$StringConverter].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].hashCode()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].hashCode()"
    - "[com.google.inject.internal.LinkedBindingImpl].hashCode()"
    - "[com.google.common.base.Converter$ReverseConverter].hashCode()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].hashCode()"
    - "[java.security.AccessControlContext].hashCode()"
    - "[com.google.common.collect.Sets$FilteredSet].hashCode()"
    - "[java.net.Proxy].hashCode()"
    - "[com.google.inject.spi.InjectionPoint$Signature].hashCode()"
    - "[com.google.inject.internal.RealElement].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedList].hashCode()"
    - "[com.google.common.collect.RegularImmutableMultiset].hashCode()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[java.nio.ShortBuffer].hashCode()"
    - "[java.lang.ProcessBuilder$Redirect].hashCode()"
    - "[com.google.inject.internal.ProviderMethodsModule].hashCode()"
    - "[com.google.common.hash.Murmur3_32HashFunction].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].hashCode()"
    - "[com.google.common.collect.Sets$CartesianSet].hashCode()"
    - "[com.google.common.graph.AbstractValueGraph].hashCode()"
    - "[com.google.common.io.BaseEncoding$Alphabet].hashCode()"
    - "[com.google.common.collect.HashMultimap].hashCode()"
    - "[com.google.inject.spi.StaticInjectionRequest].hashCode()"
    - "[java.net.Inet6Address].hashCode()"
    - "[java.util.TreeMap$Entry].hashCode()"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].hashCode()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].hashCode()"
    - "[java.nio.DoubleBuffer].hashCode()"
    - "[com.google.common.collect.ImmutableSet].hashCode()"
    - "[sun.util.locale.LocaleExtensions].hashCode()"
    - "[sun.nio.fs.UnixPath].hashCode()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Opens].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[com.google.common.collect.ArrayTable].hashCode()"
    - "[java.text.ParsePosition].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[java.time.OffsetDateTime].hashCode()"
    - "[com.google.common.base.Equivalence$Wrapper].hashCode()"
    - "[com.google.common.collect.ForwardingSet].hashCode()"
    - "[jdk.internal.misc.Signal].hashCode()"
    - "[java.util.Calendar].hashCode()"
    - "[java.net.URL].hashCode()"
    - "[com.google.common.base.Converter$ConverterComposition].hashCode()"
    - "[com.google.common.cache.CacheBuilderSpec].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.text.FieldPosition].hashCode()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].hashCode()"
    - "[com.google.inject.spi.InjectionPoint].hashCode()"
    - "[java.time.Period].hashCode()"
    - "[com.google.common.collect.ReverseOrdering].hashCode()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[com.google.common.collect.LinkedHashMultimap].hashCode()"
    - "[java.security.Provider$ServiceKey].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].hashCode()"
    - "[com.google.common.primitives.ImmutableIntArray].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    - "[java.lang.Character$Subset].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.spi.ErrorDetail].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[com.google.common.collect.ArrayListMultimap].hashCode()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].hashCode()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].hashCode()"
    - "[java.time.Instant].hashCode()"
    - "[java.util.Properties].hashCode()"
    - "[com.google.common.collect.Cut$BelowValue].hashCode()"
    - "[java.net.URI].hashCode()"
    - "[java.net.InetAddress].hashCode()"
    - "[com.google.inject.multibindings.OptionalBinder].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].hashCode()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].hashCode()"
    - "[java.net.Inet6Address$Inet6AddressHolder].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].hashCode()"
    - "[java.time.Duration].hashCode()"
    - "[com.google.common.collect.Sets$PowerSet].hashCode()"
    - "[com.google.common.base.CaseFormat$StringConverter].hashCode()"
    - "[com.google.common.base.Functions$FunctionComposition].hashCode()"
    - "[java.lang.module.ResolvedModule].hashCode()"
    - "[java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    functionUses: 1
    ICount: 6
    EdgeCount: 390
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:266"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:265"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:266,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class<?>,java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 310
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Class<?>"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInterface()"
    - "[java.lang.Class].getInterfaces()"
    - "[java.lang.Class].getGenericInterfaces()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - "[java.lang.Class].getSuperclass()"
    - "[java.lang.Class].getGenericSuperclass()"
    functionUses: 4
    ICount: 41
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:279"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:284"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:283"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:284"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:296"
        BranchSideFuncs:
        - "getInterfaces()"
      - BranchSide: "com.google.inject.internal.MoreTypes:295"
        BranchSideFuncs:
        - "isInterface()"
    - Branch String: "com.google.inject.internal.MoreTypes:286"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:296"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:295"
        BranchSideFuncs:
        - "isInterface()"
    - Branch String: "com.google.inject.internal.MoreTypes:287"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:289"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:288"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:289"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:285"
        BranchSideFuncs:
        - "getGenericInterfaces()"
      - BranchSide: "com.google.inject.internal.MoreTypes:284"
        BranchSideFuncs:
        - "getInterfaces()"
    - Branch String: "com.google.inject.internal.MoreTypes:296"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:309"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:308"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:297"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:309"
        BranchSideFuncs:
        - "getSuperclass()"
      - BranchSide: "com.google.inject.internal.MoreTypes:308"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes:299"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:301"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:300"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "com.google.inject.internal.MoreTypes:301"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:304"
        BranchSideFuncs:
        - "getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
        - "getGenericSuperclass()"
      - BranchSide: "com.google.inject.internal.MoreTypes:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:284,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "com.google.inject.internal.MoreTypes:285,1"
      Dst: "[java.lang.Class].getInterfaces()"
    - Src: "com.google.inject.internal.MoreTypes:288,1"
      Dst: "[java.lang.Class].getGenericInterfaces()"
    - Src: "com.google.inject.internal.MoreTypes:289,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.internal.MoreTypes:290,1"
      Dst: "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.internal.MoreTypes:298,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "com.google.inject.internal.MoreTypes:300,1"
      Dst: "[java.lang.Class].getGenericSuperclass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 18
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.MoreTypes].resolveTypeVariable(java.lang.reflect.Type,java.lang.Class<?>,java.lang.reflect.TypeVariable<?>)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "java.lang.reflect.Type"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Class<?>"
    - "java.lang.reflect.TypeVariable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].declaringClassOf(java.lang.reflect.TypeVariable)"
    - "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - "[java.lang.Class].getTypeParameters()"
    - "[com.google.inject.internal.MoreTypes].indexOf(java.lang.Object[],java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:316"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:320"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:319"
        BranchSideFuncs:
        - "getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - Branch String: "com.google.inject.internal.MoreTypes:321"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:326"
        BranchSideFuncs:
        - "getTypeParameters()"
        - "getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
        - "indexOf(java.lang.Object[],java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:313,1"
      Dst: "[com.google.inject.internal.MoreTypes].declaringClassOf(java.lang.reflect.TypeVariable)"
    - Src: "com.google.inject.internal.MoreTypes:320,1"
      Dst: "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.internal.MoreTypes:322,1"
      Dst: "[java.lang.Class].getTypeParameters()"
    - Src: "com.google.inject.internal.MoreTypes:322,1"
      Dst: "[com.google.inject.internal.MoreTypes].indexOf(java.lang.Object[],java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:323,1"
      Dst: "[com.google.inject.internal.MoreTypes].getSharedTypeArguments(java.lang.reflect.ParameterizedType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes].indexOf(java.lang.Object[],java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 388
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:330"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:335"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MoreTypes:334"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "com.google.inject.internal.MoreTypes:331"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:330"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:331,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.MoreTypes:335,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes].declaringClassOf(java.lang.reflect.TypeVariable<?>)"
    functionSourceFile: "com.google.inject.internal.MoreTypes"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 356
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.TypeVariable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes:355"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes:353"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes:354,1"
      Dst: "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].newInstance(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:120,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:122,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getInjectionPoint()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getConstructor()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Constructor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getMethodInterceptors()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].of()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy:140,1"
      Dst: "[com.google.common.collect.ImmutableMap].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReference].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,com.google.inject.internal.CycleDetectingLock)"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReference"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Key"
    - "com.google.inject.internal.ProvisionListenerStackCallback"
    - "java.lang.Object"
    - "com.google.inject.internal.CycleDetectingLock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReference:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.Initializer$InjectableReference:191,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    functionSourceFile: "com.google.inject.internal.Initializer$InjectableReference"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[java.net.Proxy].toString()"
    - "[java.security.Provider].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[java.util.concurrent.PriorityBlockingQueue].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[java.time.Period].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$2].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$2].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner2$1].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.net.InternetDomainName].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.primitives.Longs$LongConverter].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[com.google.common.base.Functions$IdentityFunction].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[com.google.common.collect.AllEqualOrdering].toString()"
    - "[com.google.common.primitives.Floats$LexicographicalComparator].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$2].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[com.google.common.primitives.SignedBytes$LexicographicalComparator].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[java.util.Formatter].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$7].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[com.google.common.io.CharSource$EmptyCharSource].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[java.util.concurrent.SynchronousQueue].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner3$1].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.base.Converter$IdentityConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[java.lang.Integer].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.common.util.concurrent.DirectExecutor].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[com.google.inject.Key].toString()"
    - "[java.util.concurrent.FutureTask].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$2].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[java.security.Permission].toString()"
    - "[com.google.common.base.CharMatcher$JavaLowerCase].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[com.google.common.primitives.Floats$FloatConverter].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[com.google.common.collect.Cut$BelowAll].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[com.google.inject.util.Providers$ConstantProvider].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner5$2].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[java.security.Timestamp].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.hash.MessageDigestHashFunction].toString()"
    - "[com.google.inject.internal.Scoping$5].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[java.security.Signature].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[java.util.Currency].toString()"
    - "[com.google.common.hash.MacHashFunction].toString()"
    - "[java.math.MathContext].toString()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[com.google.common.collect.Cut$AboveAll].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[java.net.Socket].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$4].toString()"
    - "[com.google.common.primitives.UnsignedLongs$LexicographicalComparator].toString()"
    - "[java.util.concurrent.ArrayBlockingQueue].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[java.util.logging.Level].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[java.time.LocalTime].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.net.URL].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.EmptyContiguousSet].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[java.time.Instant].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService$1].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.primitives.Doubles$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$4].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$1].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[javax.lang.model.element.Modifier].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[com.google.common.net.HostSpecifier].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[com.google.common.base.CharMatcher$JavaUpperCase].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.base.CharMatcher$JavaLetterOrDigit].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[java.math.BigInteger].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[java.lang.Package].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[com.google.common.collect.DiscreteDomain$LongDomain].toString()"
    - "[com.google.common.base.CharMatcher$NamedFastMatcher].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.primitives.Longs$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$1].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.common.primitives.Booleans$LexicographicalComparator].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.common.hash.Crc32cHashFunction].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.primitives.Ints$LexicographicalComparator].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[java.io.StringWriter].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.io.ByteSource$EmptyByteSource].toString()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[com.google.common.collect.DiscreteDomain$BigIntegerDomain].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.primitives.Booleans$BooleanComparator].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[com.google.common.primitives.Ints$IntConverter].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[java.util.Hashtable].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[com.google.common.reflect.TypeParameter].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.matcher.Matchers$Returns].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.CodeSource].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.matcher.Matchers$AndMatcher].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[com.google.common.primitives.Shorts$LexicographicalComparator].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.common.collect.Iterators$8].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Absent].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.common.collect.ReverseNaturalOrdering].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[java.util.Date].toString()"
    - "[com.google.common.util.concurrent.AbstractService$2].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].toString()"
    - "[java.util.BitSet].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[com.google.inject.spi.Elements$RecordingBinder].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.hash.Funnels$UnencodedCharsFunnel].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$4].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[java.util.Optional].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$3].toString()"
    - "[com.google.common.io.BaseEncoding$Alphabet].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[java.lang.Enum].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.inject.matcher.Matchers$Not].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Funnels$IntegerFunnel].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$1].toString()"
    - "[com.google.common.primitives.UnsignedInts$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.collect.UsingToStringOrdering].toString()"
    - "[com.google.inject.Scopes$1].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[com.google.common.base.Functions$ToStringFunction].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.time.ZoneId].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner3$2].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[com.google.inject.internal.ExposureBuilder].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[java.net.InetAddress].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[com.google.common.base.CharMatcher$JavaLetter].toString()"
    - "[java.lang.Module].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[java.util.Vector].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner5$1].toString()"
    - "[com.google.inject.matcher.Matchers$Only].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[com.google.common.io.Files$FilePredicate$2].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService$DelegateService].toString()"
    - "[java.util.Calendar].toString()"
    - "[com.google.common.hash.FarmHashFingerprint64].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[java.nio.file.attribute.AclEntry].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[com.google.inject.matcher.Matchers$Any].toString()"
    - "[com.google.common.primitives.Doubles$DoubleConverter].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner4$2].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[java.lang.String].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.inject.internal.MembersInjectorImpl].toString()"
    - "[com.google.common.collect.ImmutableEnumSet].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.hash.ChecksumHashFunction].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[com.google.common.hash.Fingerprint2011].toString()"
    - "[java.net.URI].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.inject.spi.MembersInjectorLookup$1].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner4$1].toString()"
    - "[com.google.common.primitives.Shorts$ShortConverter].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[java.util.Locale].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner2$2].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[com.google.common.base.CharMatcher$1].toString()"
    - "[com.google.common.primitives.Chars$LexicographicalComparator].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[java.util.concurrent.Semaphore].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.common.io.ByteStreams$1].toString()"
    - "[com.google.inject.Key$NullAnnotationStrategy].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.common.reflect.Types$TypeVariableImpl].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.reflect.ClassPath$ClassInfo].toString()"
    - "[com.google.common.base.CharMatcher$JavaDigit].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[com.google.common.hash.Funnels$LongFunnel].toString()"
    - "[com.google.common.io.Files$FilePredicate$1].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.collect.Ordering$ArbitraryOrdering].toString()"
    - "[com.google.common.base.CharMatcher$RangesMatcher].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[com.google.common.base.CharMatcher$BreakingWhitespace].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[com.google.common.math.LinearTransformation$NaNLinearTransformation].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.collect.NaturalOrdering].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].toString()"
    - "[java.time.LocalDate].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.hash.Funnels$ByteArrayFunnel].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[java.lang.Boolean].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.io.CharStreams$NullWriter].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[java.util.Properties].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.common.util.concurrent.AbstractService$1].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[com.google.common.collect.Iterables$8].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$3].toString()"
    - "[com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[com.google.common.collect.DiscreteDomain$IntegerDomain].toString()"
    - "[java.time.Duration].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 620
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializer$InjectableReference:272,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$2].<init>()"
    functionSourceFile: "com.google.inject.internal.Scoping$2"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$2:71,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$2].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$2"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer].visitNoScoping()"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitNoScoping()"
    - "[com.google.inject.Scopes$3].visitNoScoping()"
    - "[com.google.inject.Scopes$2].visitNoScoping()"
    - "[com.google.inject.spi.BindingScopingVisitor].visitNoScoping()"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$2:74,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitNoScoping()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$2].getScopeInstance()"
    functionSourceFile: "com.google.inject.internal.Scoping$2"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$2].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$2"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$1:com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.inject.Scope].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$2:84,1"
      Dst: "[com.google.inject.Scope].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$2"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].in(com.google.inject.Scope)"
    - "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$2:89,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$2(java.util.List)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$2(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].value()"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].hashCode()"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 36
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.name.NamedImpl:41,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].value()"
    - "[com.google.inject.name.Named].value()"
    functionUses: 60
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.name.NamedImpl:46"
      Branch Sides:
      - BranchSide: "com.google.inject.name.NamedImpl:50"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.name.NamedImpl:49"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "value()"
    Callsites:
    - Src: "com.google.inject.name.NamedImpl:51,1"
      Dst: "[com.google.inject.name.Named].value()"
    - Src: "com.google.inject.name.NamedImpl:51,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].toString()"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[com.google.inject.internal.Annotations].memberValueString(java.lang.String,java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 22
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.name.NamedImpl:56,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.name.NamedImpl:56,1"
      Dst: "[com.google.inject.internal.Annotations].memberValueString(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.name.NamedImpl:56,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.NamedImpl].annotationType()"
    functionSourceFile: "com.google.inject.name.NamedImpl"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 371
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:365,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:368,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:369,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 379
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:376,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:378,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider"
    linkageType: ""
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].<init>(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 414
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.GenericDeclaration"
    - "java.lang.String"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:408,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:409,1"
      Dst: "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:410,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:412,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].getBounds()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:416,1"
      Dst: "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "java.lang.reflect.Type[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].toArray(java.util.Collection)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:56,1"
      Dst: "[com.google.common.reflect.Types].toArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].toArray(java.util.Collection)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 0
    returnType: "java.lang.reflect.Type[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$ValuesView].toArray(java.lang.Object[])"
    - "[com.google.common.cache.LocalCache$Values].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Collections2$FilteredCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1KeySetImpl].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashSet].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.PriorityBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset].toArray(java.lang.Object[])"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashMap$1ValuesImpl].toArray(java.lang.Object[])"
    - "[java.util.PriorityQueue].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ForwardingCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Sets$DescendingSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingDeque].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactLinkedHashSet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[java.util.ArrayDeque].toArray(java.lang.Object[])"
    - "[com.google.common.collect.MapMakerInternalMap$SafeToArraySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ConcurrentHashMultiset$EntrySet].toArray(java.lang.Object[])"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ArrayBlockingQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toArray(java.lang.Object[])"
    - "[com.google.common.collect.CompactHashMap$KeySetView].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArraySet].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Maps$FilteredMapValues].toArray(java.lang.Object[])"
    - "[com.google.common.collect.DescendingMultiset].toArray(java.lang.Object[])"
    - "[java.util.concurrent.SynchronousQueue].toArray(java.lang.Object[])"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:521,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].getGenericDeclaration()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionDepth: 0
    returnType: "java.lang.reflect.GenericDeclaration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].getName()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].getTypeName()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].toString()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 432
    functionLinenumberEnd: 434
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].hashCode()"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    functionUses: 34
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:438,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:438,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableImpl"
    linkageType: ""
    functionLinenumber: 442
    functionLinenumberEnd: 464
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Proxy].isProxyClass(java.lang.Class)"
    - "[java.lang.reflect.Proxy].getInvocationHandler(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableInvocationHandler].access$500(com.google.common.reflect.Types$TypeVariableInvocationHandler)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].getName()"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].getGenericDeclaration()"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[java.lang.reflect.TypeVariable].getName()"
    - "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    functionUses: 56
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:443"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:457"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:445"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:455"
        BranchSideFuncs:
        - "getClass()"
        - "isProxyClass(java.lang.Class)"
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:454"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:446"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:455"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:454"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:447"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:454"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:451"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:-1"
        BranchSideFuncs:
        - "getGenericDeclaration()"
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:452"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:453"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:458"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:463"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:462"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:460"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:459"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:458"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$TypeVariableImpl:461"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableImpl:458"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:446,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:446,1"
      Dst: "[java.lang.reflect.Proxy].isProxyClass(java.lang.Class)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:447,1"
      Dst: "[java.lang.reflect.Proxy].getInvocationHandler(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:450,1"
      Dst: "[com.google.common.reflect.Types$TypeVariableInvocationHandler].access$500(com.google.common.reflect.Types$TypeVariableInvocationHandler)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:451,1"
      Dst: "[com.google.common.reflect.Types$TypeVariableImpl].getName()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:451,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:452,1"
      Dst: "[com.google.common.reflect.Types$TypeVariableImpl].getGenericDeclaration()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:452,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:453,1"
      Dst: "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:460,1"
      Dst: "[java.lang.reflect.TypeVariable].getName()"
    - Src: "com.google.common.reflect.Types$TypeVariableImpl:461,1"
      Dst: "[java.lang.reflect.TypeVariable].getGenericDeclaration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[com.google.common.reflect.Types$TypeVariableInvocationHandler].access$500(com.google.common.reflect.Types$TypeVariableInvocationHandler)"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableInvocationHandler"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionDepth: 0
    returnType: "com.google.common.reflect.Types$TypeVariableImpl"
    argCount: 1
    argTypes:
    - "com.google.common.reflect.Types$TypeVariableInvocationHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].<init>(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 395
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].setOf(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:391,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:392,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:392,1"
      Dst: "[com.google.inject.internal.RealMultibinder].setOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:392,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 443
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[com.google.inject.internal.Indexer].<init>(com.google.inject.Injector)"
    - "[com.google.inject.internal.InjectorImpl].findBindingsByType(com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].keyMatches(com.google.inject.Key)"
    - "[com.google.inject.internal.ConstructorBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ExposedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.UntargettedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates(com.google.inject.Injector)"
    - "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 180
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:400"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:403"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:402"
        BranchSideFuncs:
        - "<init>(com.google.inject.Injector)"
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "findBindingsByType(com.google.inject.TypeLiteral)"
        - "newArrayList()"
        - "newHashSet()"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:408"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:431"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "keyMatches(com.google.inject.Key)"
        - "iterator()"
        - "findBindingsByType(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:430"
        BranchSideFuncs:
        - "getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
        - "permitsDuplicates(com.google.inject.Injector)"
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:409"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:428"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:412"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:403,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:404,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:405,1"
      Dst: "[com.google.inject.internal.Indexer].<init>(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:408,1"
      Dst: "[com.google.inject.internal.InjectorImpl].findBindingsByType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:408,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:408,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:408,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:409,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:409,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].keyMatches(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:412,1"
      Dst: "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:412,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:418,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:423,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:426,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:426,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:426,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:426,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:431,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:432,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:434,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:439,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Indexer].<init>(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:102,1"
      Dst: "[com.google.inject.spi.DefaultBindingTargetVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].keyMatches(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 560
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].getAnnotation()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    - "[com.google.inject.internal.RealElement].setName()"
    - "[com.google.inject.internal.RealElement].type()"
    - "[com.google.inject.internal.Element].setName()"
    - "[com.google.inject.internal.Element].type()"
    functionUses: 2
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:556"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:557"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-1"
        BranchSideFuncs:
        - "getSetName()"
        - "setName()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:558"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-1"
        BranchSideFuncs:
        - "getAnnotation()"
        - "type()"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:559"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:556,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:556,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:557,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:558,1"
      Dst: "[com.google.inject.internal.Element].setName()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:558,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetName()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:558,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:559,1"
      Dst: "[com.google.inject.internal.Element].type()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 446
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].containsKey(java.lang.Object)"
    - "[java.util.AbstractMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[java.util.jar.Attributes].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[java.util.EnumMap].containsKey(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.WeakHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl].getBindings()"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBindings()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - "[com.google.inject.Injector].getBindings()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 43
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:445,1"
      Dst: "[com.google.inject.Injector].getBindings()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:445,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:445,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getBindings()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 451
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:449,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getParameterInjectors()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 456
    functionDepth: 9
    returnType: "com.google.inject.internal.SingleParameterInjector[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:454,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getProviderDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfProvidersKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 489
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].collectionOfProvidersOf(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:485"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:488"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "collectionOfProvidersOf(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:486,1"
      Dst: "[com.google.inject.internal.RealMultibinder].collectionOfProvidersOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:486,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfJakartaProvidersKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 499
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].collectionOfJakartaProvidersOf(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:493"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:497"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:496,1"
      Dst: "[com.google.inject.internal.RealMultibinder].collectionOfJakartaProvidersOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:496,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetOfExtendsKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 507
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].setOfExtendsOf(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:503"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:506"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "setOfExtendsOf(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:505"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:504,1"
      Dst: "[com.google.inject.internal.RealMultibinder].setOfExtendsOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:504,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElements()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:525"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:528"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:527"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:525,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:528,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 537
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:533"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:536"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:535"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:533,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:536,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 552
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].keyMatches(com.google.inject.Key)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 1
    ICount: 33
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:551"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:550"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:544"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:543"
        BranchSideFuncs:
        - "getPermitDuplicatesKey()"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:545"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:543"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:546"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:543"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:547"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:543"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:548"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:543"
        BranchSideFuncs:
        - "getKey()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    - Branch String: "com.google.inject.internal.RealMultibinder$BindingSelection:549"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$BindingSelection:542"
        BranchSideFuncs:
        - "keyMatches(com.google.inject.Key)"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:544,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:544,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].keyMatches(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:545,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getPermitDuplicatesKey()"
    - Src: "com.google.inject.internal.RealMultibinder$BindingSelection:545,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1].<init>(com.google.inject.internal.UntargettedBindingProcessor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.UntargettedBindingProcessor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].<init>(com.google.inject.internal.AbstractBindingProcessor,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:36,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].<init>(com.google.inject.internal.AbstractBindingProcessor,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1].visit(com.google.inject.spi.UntargettedBinding)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 69
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.UntargettedBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - "[com.google.inject.internal.AbstractBindingProcessor].invalidBinding(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.internal.InjectorImpl].createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
    - "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].bootstrap$(com.google.inject.internal.ProcessedBindingData)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 53
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.internal.UntargettedBindingProcessor$1:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UntargettedBindingProcessor$1:53"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
      - BranchSide: "com.google.inject.internal.UntargettedBindingProcessor$1:52"
        BranchSideFuncs:
        - "putBinding(com.google.inject.internal.BindingImpl)"
        - "invalidBinding(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
        - "getErrors()"
        - "scheduleInitialization(com.google.inject.internal.BindingImpl)"
        - "requireNonNull(java.lang.Object)"
        - "bootstrap$(com.google.inject.internal.ProcessedBindingData)"
        - "createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
        - "merge(com.google.inject.internal.Errors)"
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:39,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:45,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:46,1"
      Dst: "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:47,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].invalidBinding(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:47,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:48,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:60,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:60,1"
      Dst: "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].bootstrap$(com.google.inject.internal.ProcessedBindingData)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:54,1"
      Dst: "[com.google.inject.internal.InjectorImpl].createUninitializedBinding(com.google.inject.Key,com.google.inject.internal.Scoping,java.lang.Object,com.google.inject.internal.Errors,boolean,java.util.function.Consumer)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:61,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:64,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:64,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].bootstrap$(com.google.inject.internal.ProcessedBindingData)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ProcessedBindingData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].<init>(com.google.inject.internal.ProcessedBindingData)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116:-1,1"
      Dst: "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].<init>(com.google.inject.internal.ProcessedBindingData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].<init>(com.google.inject.internal.ProcessedBindingData)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ProcessedBindingData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1].visitOther(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1:73,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$CustomClassLoadingOption].values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption:56,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$CustomClassLoadingOption].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption:56,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$CustomClassLoadingOption].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption:56,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$CustomClassLoadingOption].$values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$3].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$3"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$ColorizeOption$3:134,1"
      Dst: "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$3].enabled()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$3"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector$1].invoke(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector$1"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector$1:50,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.SingleMethodInjector$1:52,1"
      Dst: "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.BiFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].lambda$areSimilarLookingTypes$0(java.lang.Class,java.lang.Class)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$areSimilarLookingTypes$0(java.lang.Class,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$areSimilarLookingTypes$0(java.lang.Class,java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:69,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:69,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:69,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMapBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1008,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder"
    linkageType: ""
    functionLinenumber: 1016
    functionLinenumberEnd: 1041
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].<init>(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].<init>(com.google.inject.Key)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 1
    ICount: 37
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1017,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1017,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1018,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1018,1"
      Dst: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].<init>(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1018,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1025,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1026,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1029,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1033,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1038,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1039,1"
      Dst: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].<init>(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 582
    functionLinenumberEnd: 588
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfSetOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:584"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:587"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "mapOfSetOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:586"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:585,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfSetOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:585,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].<init>(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider"
    linkageType: ""
    functionLinenumber: 1059
    functionLinenumberEnd: 1062
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].<init>(com.google.inject.Key)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1060,1"
      Dst: "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].<init>(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 598
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfSetOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:592"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:595,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfSetOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:595,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 608
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:602"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:606"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:605,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:605,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 620
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:614"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:618"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:617,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:617,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 574
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].setOf(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:576"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:579"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "setOf(com.google.inject.TypeLiteral)"
        - "mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:578"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:577,1"
      Dst: "[com.google.inject.internal.RealMultibinder].setOf(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:577,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:577,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].<init>(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider"
    linkageType: ""
    functionLinenumber: 1126
    functionLinenumberEnd: 1129
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].<init>(com.google.inject.Key)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1127,1"
      Dst: "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].<init>(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder"
    linkageType: ""
    functionLinenumber: 1043
    functionLinenumberEnd: 1045
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1044,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].hashCode()"
    functionUses: 37
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:696,1"
      Dst: "[com.google.inject.Key].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder"
    linkageType: ""
    functionLinenumber: 1048
    functionLinenumberEnd: 1051
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    functionUses: 56
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder:1049"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder:1049"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder:1048"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder:1050"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder:1048"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder:1050,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 692
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 59
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:691"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:690"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:691"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:690"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:691,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].trimSource(java.util.List)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].trimSource(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$JitLimitation].values()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$JitLimitation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl$JitLimitation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$JitLimitation:108,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$JitLimitation].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$JitLimitation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl$JitLimitation"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$JitLimitation:108,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$JitLimitation].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$JitLimitation"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$JitLimitation:108,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$JitLimitation].$values()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$JitLimitation"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl$JitLimitation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].bootstrap$(java.util.regex.Pattern)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "java.util.regex.Pattern"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].<init>(java.util.regex.Pattern)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].<init>(java.util.regex.Pattern)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].<init>(java.util.regex.Pattern)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.regex.Pattern"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].lambda$isExempt$1(java.util.regex.Pattern,java.lang.String)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].lambda$isExempt$1(java.util.regex.Pattern,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].lambda$isExempt$1(java.util.regex.Pattern,java.lang.String)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.regex.Pattern"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:197,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:197,1"
      Dst: "[java.util.regex.Matcher].matches()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$OrMatcher].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.matcher.Matchers$OrMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$OrMatcher:446,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$OrMatcher"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 12
    ICount: 12
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$OrMatcher:453"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:452"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$OrMatcher:453"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:452"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$OrMatcher:453,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$OrMatcher"
    linkageType: ""
    functionLinenumber: 457
    functionLinenumberEnd: 461
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 18
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$OrMatcher:458"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$OrMatcher:459"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$OrMatcher:460"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$OrMatcher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$OrMatcher:459,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$OrMatcher"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 8
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$OrMatcher:465,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$OrMatcher].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$OrMatcher"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 471
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    functionUses: 20
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$OrMatcher:470,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].setName()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].uniqueId()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].type()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "com.google.inject.internal.Element$Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].keyType()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].annotationType()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].toString()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,int,com.google.inject.internal.Element$Type,java.lang.String)"
    functionUses: 22
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealElement:71,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.RealElement:71,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,int,com.google.inject.internal.Element$Type,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].setName()"
    - "[com.google.inject.internal.RealElement].uniqueId()"
    - "[com.google.inject.internal.RealElement].type()"
    - "[com.google.inject.internal.RealElement].keyType()"
    - "[com.google.inject.internal.Element].setName()"
    - "[com.google.inject.internal.Element].uniqueId()"
    - "[com.google.inject.internal.Element].type()"
    - "[com.google.inject.internal.Element].keyType()"
    functionUses: 60
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealElement:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealElement:-1"
        BranchSideFuncs:
        - "setName()"
      - BranchSide: "com.google.inject.internal.RealElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealElement:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealElement:-1"
        BranchSideFuncs:
        - "uniqueId()"
      - BranchSide: "com.google.inject.internal.RealElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealElement:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealElement:-1"
        BranchSideFuncs:
        - "type()"
      - BranchSide: "com.google.inject.internal.RealElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealElement:88"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealElement:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "keyType()"
      - BranchSide: "com.google.inject.internal.RealElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealElement:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealElement:86,1"
      Dst: "[com.google.inject.internal.Element].setName()"
    - Src: "com.google.inject.internal.RealElement:86,1"
      Dst: "[com.google.inject.internal.RealElement].setName()"
    - Src: "com.google.inject.internal.RealElement:86,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealElement:87,1"
      Dst: "[com.google.inject.internal.Element].uniqueId()"
    - Src: "com.google.inject.internal.RealElement:87,1"
      Dst: "[com.google.inject.internal.RealElement].uniqueId()"
    - Src: "com.google.inject.internal.RealElement:88,1"
      Dst: "[com.google.inject.internal.Element].type()"
    - Src: "com.google.inject.internal.RealElement:88,1"
      Dst: "[com.google.inject.internal.RealElement].type()"
    - Src: "com.google.inject.internal.RealElement:89,1"
      Dst: "[com.google.inject.internal.Element].keyType()"
    - Src: "com.google.inject.internal.RealElement:89,1"
      Dst: "[com.google.inject.internal.RealElement].keyType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.RealElement].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealElement"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.Enum].hashCode()"
    functionUses: 36
    ICount: 28
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealElement:94,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "com.google.inject.internal.RealElement:96,1"
      Dst: "[java.lang.Enum].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InheritedScannersModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InheritedScannersModule"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getScannerBindings()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorShell$InheritedScannersModule:354"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$InheritedScannersModule:357"
        BranchSideFuncs:
        - "hasNext()"
        - "getScannerBindings()"
        - "iterator()"
        - "applyTo(com.google.inject.Binder)"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectorShell$InheritedScannersModule:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:354,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScannerBindings()"
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:354,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:354,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:354,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorShell$InheritedScannersModule:355,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorBindingData].getScannerBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 242
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].isPresent()"
    - "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getScannerBindings()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:235"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:241"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:240"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:235,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:236,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - Src: "com.google.inject.internal.InjectorBindingData:237,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:237,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScannerBindings()"
    - Src: "com.google.inject.internal.InjectorBindingData:237,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorBindingData:239,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.InjectorBindingData:241,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].scanModulesForAnnotatedMethods(com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].scanModulesForAnnotatedMethods(com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 6
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:55,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].getSource()"
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:55,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:55,1"
      Dst: "[com.google.inject.Binder].scanModulesForAnnotatedMethods(com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethod$FastClassProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation,java.util.function.BiFunction)"
    functionSourceFile: "com.google.inject.internal.ProviderMethod$FastClassProviderMethod"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "com.google.inject.Key"
    - "java.lang.reflect.Method"
    - "java.lang.Object"
    - "com.google.common.collect.ImmutableSet"
    - "java.lang.Class"
    - "java.lang.annotation.Annotation"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethod$FastClassProviderMethod:252,1"
      Dst: "[com.google.inject.internal.ProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethod$FastClassProviderMethod].doProvision(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.ProviderMethod$FastClassProviderMethod"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethod$FastClassProviderMethod:260,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethod$FastClassProviderMethod:262,1"
      Dst: "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableField].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableField"
    linkageType: ""
    functionLinenumber: 505
    functionLinenumberEnd: 509
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Field"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$InjectableMember].<init>(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableField:506,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMember].<init>(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableField].toInjectionPoint()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableField"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionDepth: 9
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableField:512,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,boolean)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 130
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Field"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.InjectionPoint].getAnnotations(java.lang.reflect.Field)"
    - "[java.lang.reflect.Field].getAnnotatedType()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].getFieldType(java.lang.reflect.Field)"
    - "[com.google.inject.internal.Annotations].getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - "[com.google.inject.internal.Nullability].hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isNullable(java.lang.reflect.Field)"
    - "[com.google.inject.spi.InjectionPoint].newDependency(com.google.inject.Key,boolean,int)"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - "[com.google.inject.internal.KotlinSupportInterface].isNullable(java.lang.reflect.Field)"
    functionUses: 1
    ICount: 40
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:125"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:127"
        BranchSideFuncs:
        - "hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
      - BranchSide: "com.google.inject.spi.InjectionPoint:126"
        BranchSideFuncs:
        - "getInstance()"
        - "isNullable(java.lang.reflect.Field)"
    - Branch String: "com.google.inject.spi.InjectionPoint:126"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:127"
        BranchSideFuncs:
        - "getInstance()"
        - "isNullable(java.lang.reflect.Field)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:126"
        BranchSideFuncs:
        - "getInstance()"
        - "isNullable(java.lang.reflect.Field)"
    - Branch String: "com.google.inject.spi.InjectionPoint:127"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:127"
        BranchSideFuncs:
        - "newDependency(com.google.inject.Key,boolean,int)"
        - "of(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:126"
        BranchSideFuncs:
        - "getInstance()"
        - "isNullable(java.lang.reflect.Field)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:106,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:111,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getAnnotations(java.lang.reflect.Field)"
    - Src: "com.google.inject.spi.InjectionPoint:112,1"
      Dst: "[java.lang.reflect.Field].getAnnotatedType()"
    - Src: "com.google.inject.spi.InjectionPoint:112,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:113,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:116,1"
      Dst: "[com.google.inject.TypeLiteral].getFieldType(java.lang.reflect.Field)"
    - Src: "com.google.inject.spi.InjectionPoint:116,1"
      Dst: "[com.google.inject.internal.Annotations].getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:118,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:118,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.spi.InjectionPoint:120,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.spi.InjectionPoint:120,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:122,1"
      Dst: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - Src: "com.google.inject.spi.InjectionPoint:125,1"
      Dst: "[com.google.inject.internal.Nullability].hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.spi.InjectionPoint:127,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.spi.InjectionPoint:127,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].isNullable(java.lang.reflect.Field)"
    - Src: "com.google.inject.spi.InjectionPoint:128,1"
      Dst: "[com.google.inject.spi.InjectionPoint].newDependency(com.google.inject.Key,boolean,int)"
    - Src: "com.google.inject.spi.InjectionPoint:128,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint].getAnnotations(java.lang.reflect.Field)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 889
    functionLinenumberEnd: 897
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getAnnotations(java.lang.reflect.Field)"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.common.collect.ObjectArrays].concat(java.lang.Object[],java.lang.Object[],java.lang.Class)"
    - "[com.google.inject.internal.KotlinSupportInterface].getAnnotations(java.lang.reflect.Field)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:893"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:896"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:895"
        BranchSideFuncs:
        - "concat(java.lang.Object[],java.lang.Object[],java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:890,1"
      Dst: "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:891,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.spi.InjectionPoint:891,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].getAnnotations(java.lang.reflect.Field)"
    - Src: "com.google.inject.spi.InjectionPoint:896,1"
      Dst: "[com.google.common.collect.ObjectArrays].concat(java.lang.Object[],java.lang.Object[],java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport].getInstance()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport"
    linkageType: ""
    functionLinenumber: 17
    functionLinenumberEnd: 19
    functionDepth: 0
    returnType: "com.google.inject.internal.KotlinSupportInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getFieldType(java.lang.reflect.Field)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 256
    functionDepth: 7
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Field].getGenericType()"
    - "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:251,1"
      Dst: "[java.lang.reflect.Field].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:251,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:250,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:255,1"
      Dst: "[java.lang.reflect.Field].getGenericType()"
    - Src: "com.google.inject.TypeLiteral:255,1"
      Dst: "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 385
    functionDepth: 3
    returnType: "com.google.inject.Key"
    argCount: 4
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Member"
    - "java.lang.annotation.Annotation[]"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:384"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:380"
        BranchSideFuncs:
        - "findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
        - "throwIfNewErrors(int)"
        - "get(com.google.inject.TypeLiteral)"
        - "get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
        - "size()"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:381,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.Annotations:382,1"
      Dst: "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.internal.Annotations:383,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.Annotations:384,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.Annotations:384,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 404
    functionDepth: 2
    returnType: "java.lang.annotation.Annotation"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.Errors"
    - "java.lang.reflect.Member"
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.Annotations].isBindingAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Errors].duplicateBindingAnnotations(java.lang.reflect.Member,java.lang.Class,java.lang.Class)"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 3
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:392"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:403"
        BranchSideFuncs:
        - "isBindingAnnotation(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.Annotations:402"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:394"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:390"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:389"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:395"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:398"
        BranchSideFuncs:
        - "duplicateBindingAnnotations(java.lang.reflect.Member,java.lang.Class,java.lang.Class)"
        - "annotationType()"
      - BranchSide: "com.google.inject.internal.Annotations:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:393,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.Annotations:394,1"
      Dst: "[com.google.inject.internal.Annotations].isBindingAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:396,1"
      Dst: "[com.google.inject.internal.Errors].duplicateBindingAnnotations(java.lang.reflect.Member,java.lang.Class,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Annotations].isBindingAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 415
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations$AnnotationChecker].hasAnnotations(java.lang.Class)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:414,1"
      Dst: "[com.google.inject.internal.Annotations$AnnotationChecker].hasAnnotations(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Nullability].hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "com.google.inject.internal.Nullability"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealElement:com.google.inject.internal.RealOptionalBinder$BaseAnnotation:com.google.inject.internal.UniqueAnnotations$1:com.google.inject.name.NamedImpl].annotationType()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Nullability:40"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Nullability:46"
        BranchSideFuncs:
        - "annotationType()"
        - "equals(java.lang.Object)"
        - "getSimpleName()"
      - BranchSide: "com.google.inject.internal.Nullability:45"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Nullability:42"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Nullability:40"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Nullability:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Nullability:41,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.Nullability:42,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.internal.Nullability:42,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.util.Modules$OverrideModule].<init>(java.lang.Iterable,com.google.common.collect.ImmutableSet)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Iterable"
    - "com.google.common.collect.ImmutableSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.AbstractModule].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule:211,1"
      Dst: "[com.google.inject.AbstractModule].<init>()"
    - Src: "com.google.inject.util.Modules$OverrideModule:212,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule].configure()"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 362
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.AbstractModule].binder()"
    - "[com.google.inject.AbstractModule].currentStage()"
    - "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].expose(com.google.inject.Key)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedSource(com.google.inject.Key)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.Elements$RecordingBinder].skipSources(java.lang.Class[])"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.inject.util.Modules].extractScanners(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[com.google.inject.util.Modules$OverrideModule$1].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map)"
    - "[com.google.inject.util.Modules$ModuleWriter].writeAll(java.lang.Iterable)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.util.Modules$OverrideModule$2].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map,java.util.List)"
    - "[com.google.inject.util.Modules$OverrideModule$3].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Map,java.util.Map)"
    - "[java.util.List].size()"
    - "[com.google.inject.Binder].newPrivateBinder()"
    - "[com.google.inject.spi.Element].getSource()"
    - "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    - "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    - "[com.google.inject.spi.PrivateElements].getElements()"
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    functionUses: 1
    ICount: 56
    EdgeCount: 302
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$OverrideModule:224"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:238"
        BranchSideFuncs:
        - "getOnlyElement(java.lang.Iterable)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:237"
        BranchSideFuncs:
        - "writeAll(java.lang.Iterable)"
        - "extractScanners(java.lang.Iterable)"
        - "addAll(java.lang.Iterable)"
        - "builder()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Map,java.util.Map)"
        - "getElements(com.google.inject.Stage,java.lang.Iterable)"
        - "newHashSet()"
        - "skipSources(java.lang.Class[])"
        - "add(java.lang.Object)"
        - "currentStage()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map)"
        - "build()"
        - "getClass()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map,java.util.List)"
        - "newArrayList()"
        - "newHashMap()"
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.util.Modules$OverrideModule:226"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:238"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "newPrivateBinder()"
        - "getSource()"
        - "iterator()"
        - "getExposedKeys()"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:237"
        BranchSideFuncs:
        - "writeAll(java.lang.Iterable)"
        - "extractScanners(java.lang.Iterable)"
        - "addAll(java.lang.Iterable)"
        - "builder()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Map,java.util.Map)"
        - "getElements(com.google.inject.Stage,java.lang.Iterable)"
        - "newHashSet()"
        - "skipSources(java.lang.Class[])"
        - "add(java.lang.Object)"
        - "currentStage()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map)"
        - "build()"
        - "getClass()"
        - "<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map,java.util.List)"
        - "newArrayList()"
        - "newHashMap()"
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.util.Modules$OverrideModule:230"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:233"
        BranchSideFuncs:
        - "hasNext()"
        - "getExposedSource(com.google.inject.Key)"
        - "next()"
        - "expose(com.google.inject.Key)"
        - "withSource(java.lang.Object)"
        - "iterator()"
        - "getExposedKeys()"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule:232"
        BranchSideFuncs:
        - "getElements()"
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule:218,1"
      Dst: "[com.google.inject.AbstractModule].binder()"
    - Src: "com.google.inject.util.Modules$OverrideModule:219,1"
      Dst: "[com.google.inject.AbstractModule].currentStage()"
    - Src: "com.google.inject.util.Modules$OverrideModule:219,1"
      Dst: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    - Src: "com.google.inject.util.Modules$OverrideModule:224,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.util.Modules$OverrideModule:225,1"
      Dst: "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - Src: "com.google.inject.util.Modules$OverrideModule:229,1"
      Dst: "[com.google.inject.Binder].newPrivateBinder()"
    - Src: "com.google.inject.util.Modules$OverrideModule:229,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.util.Modules$OverrideModule:229,1"
      Dst: "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule:230,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - Src: "com.google.inject.util.Modules$OverrideModule:230,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.util.Modules$OverrideModule:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$OverrideModule:230,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$OverrideModule:231,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    - Src: "com.google.inject.util.Modules$OverrideModule:231,1"
      Dst: "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    - Src: "com.google.inject.util.Modules$OverrideModule:234,1"
      Dst: "[com.google.inject.spi.PrivateElements].getElements()"
    - Src: "com.google.inject.util.Modules$OverrideModule:238,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.util.Modules$OverrideModule:238,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - Src: "com.google.inject.util.Modules$OverrideModule:239,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.util.Modules$OverrideModule:240,1"
      Dst: "[com.google.inject.util.Modules].extractScanners(java.lang.Iterable)"
    - Src: "com.google.inject.util.Modules$OverrideModule:244,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.util.Modules$OverrideModule:244,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.util.Modules$OverrideModule:244,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule:244,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.util.Modules$OverrideModule:246,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.util.Modules$OverrideModule:248,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.util.Modules$OverrideModule:251,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$1].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map)"
    - Src: "com.google.inject.util.Modules$OverrideModule:269,1"
      Dst: "[com.google.inject.util.Modules$ModuleWriter].writeAll(java.lang.Iterable)"
    - Src: "com.google.inject.util.Modules$OverrideModule:275,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.util.Modules$OverrideModule:276,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map,java.util.List)"
    - Src: "com.google.inject.util.Modules$OverrideModule:335,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$3].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Map,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.util.Modules$OverrideModule$1].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$1"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.util.Modules$OverrideModule"
    - "com.google.inject.Binder"
    - "java.util.Set"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$1:251,1"
      Dst: "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$ModuleWriter"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 380
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.Elements$RecordingBinder].skipSources(java.lang.Class[])"
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$ModuleWriter:377,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    - Src: "com.google.inject.util.Modules$ModuleWriter:378,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.util.Modules$ModuleWriter:378,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$ModuleWriter].writeAll(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.util.Modules$ModuleWriter"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 392
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.ScopeBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProviderLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InterceptorBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.PrivateElementsImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeConverterBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProvisionListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.BindingImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.StaticInjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Message].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.MembersInjectorLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    functionUses: 3
    ICount: 10
    EdgeCount: 318
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$ModuleWriter:388"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$ModuleWriter:391"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "acceptVisitor(com.google.inject.spi.ElementVisitor)"
      - BranchSide: "com.google.inject.util.Modules$ModuleWriter:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Modules$ModuleWriter:388,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.util.Modules$ModuleWriter:388,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$ModuleWriter:388,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$ModuleWriter:389,1"
      Dst: "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Set,java.util.Map,java.util.List)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.util.Modules$OverrideModule"
    - "com.google.inject.Binder"
    - "java.util.Set"
    - "java.util.Map"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:276,1"
      Dst: "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$3].<init>(com.google.inject.util.Modules$OverrideModule,com.google.inject.Binder,java.util.Map,java.util.Map)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$3"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.util.Modules$OverrideModule"
    - "com.google.inject.Binder"
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$3:335,1"
      Dst: "[com.google.inject.util.Modules$ModuleWriter].<init>(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule].getScopeInstanceOrNull(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 2
    returnType: "com.google.inject.Scope"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$OverrideModule$4].<init>(com.google.inject.util.Modules$OverrideModule)"
    - "[com.google.inject.internal.BindingImpl].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule:364,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$4].<init>(com.google.inject.util.Modules$OverrideModule)"
    - Src: "com.google.inject.util.Modules$OverrideModule:364,1"
      Dst: "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$4].<init>(com.google.inject.util.Modules$OverrideModule)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$4"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 366
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.util.Modules$OverrideModule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$4:365,1"
      Dst: "[com.google.inject.spi.DefaultBindingScopingVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].<init>()"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DefaultBindingScopingVisitor:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.RequireAtInjectOnConstructorsOption"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:34,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].getSource()"
    functionSourceFile: "com.google.inject.spi.RequireAtInjectOnConstructorsOption"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.RequireAtInjectOnConstructorsOption"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].requireAtInjectOnConstructors()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].requireAtInjectOnConstructors()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:44,1"
      Dst: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].getSource()"
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:44,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:44,1"
      Dst: "[com.google.inject.Binder].requireAtInjectOnConstructors()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.RequireAtInjectOnConstructorsOption"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireAtInjectOnConstructorsOption)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.RequireAtInjectOnConstructorsOption)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireAtInjectOnConstructorsOption)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireAtInjectOnConstructorsOption:49,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireAtInjectOnConstructorsOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].hasAttributes()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].withoutAttributes()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 432
    functionLinenumberEnd: 434
    functionDepth: 1
    returnType: "com.google.inject.Key$AnnotationStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotationType()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:433,1"
      Dst: "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotationType()"
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:433,1"
      Dst: "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotationType()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 2
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:443,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].getAnnotation()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 454
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    functionUses: 57
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.Key$AnnotationInstanceStrategy:448"
      Branch Sides:
      - BranchSide: "com.google.inject.Key$AnnotationInstanceStrategy:452"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key$AnnotationInstanceStrategy:451"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:453,1"
      Dst: "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].hashCode()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].hashCode()"
    - "[com.google.inject.internal.RealElement].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].hashCode()"
    - "[com.google.inject.name.NamedImpl].hashCode()"
    - "[java.lang.annotation.Annotation].hashCode()"
    functionUses: 35
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:458,1"
      Dst: "[java.lang.annotation.Annotation].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    functionSourceFile: "com.google.inject.Key$AnnotationInstanceStrategy"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[java.lang.annotation.Annotation].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationInstanceStrategy:463,1"
      Dst: "[java.lang.annotation.Annotation].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$2].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$2"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$ColorizeOption$2:128,1"
      Dst: "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$2].enabled()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$2"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].<init>(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:35,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].getScanner()"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    - "[com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    - "[com.google.inject.util.Modules$1].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:50,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    functionSourceFile: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.multibindings.MultibindingsScanner$1].annotationClasses()"
    - "[com.google.inject.internal.ProvidesMethodScanner].annotationClasses()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScanner].annotationClasses()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.spi.ModuleAnnotatedMethodScanner,java.util.Set,java.lang.Object)"
    functionUses: 19
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:62,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScanner].annotationClasses()"
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:64,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding:64,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.spi.ModuleAnnotatedMethodScanner,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 704
    functionLinenumberEnd: 706
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    functionUses: 16
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:705,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].<init>(jakarta.inject.Provider)"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "jakarta.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProvider:129,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProvider"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    - "[com.google.inject.internal.InjectorImpl$1].get()"
    - "[com.google.inject.spi.ProviderLookup$1].get()"
    - "[com.google.inject.internal.SingletonScope$1].get()"
    - "[com.google.inject.util.Providers$ConstantProvider].get()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get()"
    - "[jakarta.inject.Provider].get()"
    functionUses: 7
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProvider:135,1"
      Dst: "[jakarta.inject.Provider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].toString()"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProvider"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(jakarta.inject.Provider)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProvider:140,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProvider"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 56
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.util.Providers$GuicifiedJakartaProvider:145"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers$GuicifiedJakartaProvider:145"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.util.Providers$GuicifiedJakartaProvider:144"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Providers$GuicifiedJakartaProvider:146"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers$GuicifiedJakartaProvider:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProvider:146,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].hashCode()"
    functionSourceFile: "com.google.inject.util.Providers$GuicifiedJakartaProvider"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$GuicifiedJakartaProvider:151,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AndMatcher].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AndMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AndMatcher:413,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AndMatcher"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 12
    ICount: 12
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$AndMatcher:420"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:419"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$AndMatcher:420"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:419"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AndMatcher:420,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AndMatcher"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 18
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$AndMatcher:425"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$AndMatcher:426"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$AndMatcher:427"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AndMatcher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AndMatcher:426,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AndMatcher"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 433
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 8
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AndMatcher:432,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AndMatcher].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AndMatcher"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    functionUses: 20
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AndMatcher:437,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$ModuleInfo].<init>(com.google.inject.spi.ModuleSource,boolean)"
    functionSourceFile: "com.google.inject.spi.Elements$ModuleInfo"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.ModuleSource"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$ModuleInfo:175,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].configure()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 614
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.AbstractModule].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingBuilder].toInstance(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:612,1"
      Dst: "[com.google.inject.AbstractModule].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:612,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:612,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule"
    linkageType: ""
    functionLinenumber: 616
    functionLinenumberEnd: 618
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 56
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:617"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:616"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:617"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:616"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:617,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 623
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.Key].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 34
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:622,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:622,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.inject.internal.RealMultibinder$PermitDuplicatesModule:622,1"
      Dst: "[com.google.inject.Key].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ExposedBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ExposedBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ExposedBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ExposedBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedBindingImpl:46,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ExposedBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedBindingImpl:51,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.ExposedBindingImpl:51,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.ExposedBindingImpl:51,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].getPrivateElements()"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "com.google.inject.spi.PrivateElements"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedBindingImpl:61,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.ExposedBindingImpl:62,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ExposedBindingImpl:62,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.ExposedBindingImpl:63,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ExposedBindingImpl:65,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.ExposedBindingImpl"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedBindingImpl:70,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].<init>(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[com.google.inject.matcher.Matchers].checkForRuntimeRetention(java.lang.Class)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:153,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:154,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:155,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:155,1"
      Dst: "[com.google.inject.matcher.Matchers].checkForRuntimeRetention(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.reflect.AnnotatedElement)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.AnnotatedElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Parameter].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.AccessibleObject].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Field].getAnnotation(java.lang.Class)"
    - "[java.lang.Module].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Executable].getAnnotation(java.lang.Class)"
    - "[com.google.common.reflect.Parameter].getAnnotation(java.lang.Class)"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[java.lang.Package].getAnnotation(java.lang.Class)"
    - "[com.google.common.reflect.Invokable].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getAnnotation(java.lang.Class)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[java.lang.reflect.AnnotatedElement].getAnnotation(java.lang.Class)"
    - "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWith:161"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWith:159"
        BranchSideFuncs:
        - "annotationType()"
        - "getAnnotation(java.lang.Class)"
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWith:161"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWith:159"
        BranchSideFuncs:
        - "annotationType()"
        - "getAnnotation(java.lang.Class)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:160,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:160,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:161,1"
      Dst: "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWith:166"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWith:166"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWith:165"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$AnnotatedWith:167"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$AnnotatedWith:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:167,1"
      Dst: "[java.lang.annotation.Annotation].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].hashCode()"
    - "[com.google.inject.internal.RealElement].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].hashCode()"
    - "[com.google.inject.name.NamedImpl].hashCode()"
    - "[java.lang.annotation.Annotation].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:172,1"
      Dst: "[java.lang.annotation.Annotation].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:177,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$AnnotatedWith"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.reflect.AnnotatedElement)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$AnnotatedWith:149,1"
      Dst: "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.reflect.AnnotatedElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.GuiceInternal"
    - "com.google.inject.internal.ErrorId"
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    functionUses: 8
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Message:53,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.ErrorId"
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:80,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.spi.Message:80,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].getErrorDetail()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "com.google.inject.spi.ErrorDetail"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].getSource()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.base.Absent:com.google.common.base.CharMatcher$1:com.google.common.base.CharMatcher$BreakingWhitespace:com.google.common.base.CharMatcher$JavaDigit:com.google.common.base.CharMatcher$JavaLetter:com.google.common.base.CharMatcher$JavaLetterOrDigit:com.google.common.base.CharMatcher$JavaLowerCase:com.google.common.base.CharMatcher$JavaUpperCase:com.google.common.base.CharMatcher$NamedFastMatcher:com.google.common.base.CharMatcher$RangesMatcher:com.google.common.base.Converter$IdentityConverter:com.google.common.base.Functions$IdentityFunction:com.google.common.base.Functions$ToStringFunction:com.google.common.base.Predicates$ObjectPredicate$1:com.google.common.base.Predicates$ObjectPredicate$2:com.google.common.base.Predicates$ObjectPredicate$3:com.google.common.base.Predicates$ObjectPredicate$4:com.google.common.base.Suppliers$SupplierFunctionImpl:com.google.common.collect.AllEqualOrdering:com.google.common.collect.Cut$AboveAll:com.google.common.collect.Cut$BelowAll:com.google.common.collect.DiscreteDomain$BigIntegerDomain:com.google.common.collect.DiscreteDomain$IntegerDomain:com.google.common.collect.DiscreteDomain$LongDomain:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.Iterables$8:com.google.common.collect.Iterators$8:com.google.common.collect.NaturalOrdering:com.google.common.collect.Ordering$ArbitraryOrdering:com.google.common.collect.ReverseNaturalOrdering:com.google.common.collect.UsingToStringOrdering:com.google.common.hash.ChecksumHashFunction:com.google.common.hash.Crc32cHashFunction:com.google.common.hash.FarmHashFingerprint64:com.google.common.hash.Fingerprint2011:com.google.common.hash.Funnels$ByteArrayFunnel:com.google.common.hash.Funnels$IntegerFunnel:com.google.common.hash.Funnels$LongFunnel:com.google.common.hash.Funnels$UnencodedCharsFunnel:com.google.common.hash.MacHashFunction:com.google.common.hash.MessageDigestHashFunction:com.google.common.io.BaseEncoding$Alphabet:com.google.common.io.ByteSource$EmptyByteSource:com.google.common.io.ByteStreams$1:com.google.common.io.CharSource$EmptyCharSource:com.google.common.io.CharStreams$NullWriter:com.google.common.io.Files$FilePredicate$1:com.google.common.io.Files$FilePredicate$2:com.google.common.math.LinearTransformation$NaNLinearTransformation:com.google.common.net.HostSpecifier:com.google.common.net.InternetDomainName:com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Booleans$BooleanComparator:com.google.common.primitives.Booleans$LexicographicalComparator:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Chars$LexicographicalComparator:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Doubles$DoubleConverter:com.google.common.primitives.Doubles$LexicographicalComparator:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Floats$FloatConverter:com.google.common.primitives.Floats$LexicographicalComparator:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Ints$IntConverter:com.google.common.primitives.Ints$LexicographicalComparator:com.google.common.primitives.Longs$LexicographicalComparator:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Longs$LongConverter:com.google.common.primitives.Shorts$LexicographicalComparator:com.google.common.primitives.Shorts$ShortArrayAsList:com.google.common.primitives.Shorts$ShortConverter:com.google.common.primitives.SignedBytes$LexicographicalComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator:com.google.common.primitives.UnsignedInts$LexicographicalComparator:com.google.common.primitives.UnsignedLongs$LexicographicalComparator:com.google.common.reflect.ClassPath$ClassInfo:com.google.common.reflect.ClassPath$ResourceInfo:com.google.common.reflect.TypeParameter:com.google.common.reflect.TypeResolver$TypeVariableKey:com.google.common.reflect.Types$TypeVariableImpl:com.google.common.util.concurrent.AbstractExecutionThreadService$1:com.google.common.util.concurrent.AbstractIdleService$DelegateService:com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate:com.google.common.util.concurrent.AbstractService$1:com.google.common.util.concurrent.AbstractService$2:com.google.common.util.concurrent.ClosingFuture$2:com.google.common.util.concurrent.ClosingFuture$3:com.google.common.util.concurrent.ClosingFuture$4:com.google.common.util.concurrent.ClosingFuture$7:com.google.common.util.concurrent.ClosingFuture$Combiner2$1:com.google.common.util.concurrent.ClosingFuture$Combiner2$2:com.google.common.util.concurrent.ClosingFuture$Combiner3$1:com.google.common.util.concurrent.ClosingFuture$Combiner3$2:com.google.common.util.concurrent.ClosingFuture$Combiner4$1:com.google.common.util.concurrent.ClosingFuture$Combiner4$2:com.google.common.util.concurrent.ClosingFuture$Combiner5$1:com.google.common.util.concurrent.ClosingFuture$Combiner5$2:com.google.common.util.concurrent.DirectExecutor:com.google.common.util.concurrent.ServiceManager$1:com.google.common.util.concurrent.ServiceManager$2:com.google.inject.Key:com.google.inject.Key$NullAnnotationStrategy:com.google.inject.Scopes$1:com.google.inject.internal.ConstantBindingBuilderImpl:com.google.inject.internal.ExposureBuilder:com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.MembersInjectorImpl:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.Scoping$5:com.google.inject.internal.SingletonScope:com.google.inject.internal.TypeConverterBindingProcessor$1:com.google.inject.internal.TypeConverterBindingProcessor$2:com.google.inject.internal.TypeConverterBindingProcessor$3:com.google.inject.internal.TypeConverterBindingProcessor$4:com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:com.google.inject.matcher.Matchers$AndMatcher:com.google.inject.matcher.Matchers$AnnotatedWith:com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo:com.google.inject.matcher.Matchers$InSubpackage:com.google.inject.matcher.Matchers$Not:com.google.inject.matcher.Matchers$Only:com.google.inject.matcher.Matchers$OrMatcher:com.google.inject.matcher.Matchers$Returns:com.google.inject.spi.Elements$RecordingBinder:com.google.inject.spi.MembersInjectorLookup$1:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.text.AttributedCharacterIterator$Attribute:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.SynchronousQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.lang.model.element.Modifier:javax.security.auth.Subject:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].isEmpty()"
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.Double].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.common.collect.Iterables].getLast(java.lang.Iterable)"
    - "[java.util.List].isEmpty()"
    functionUses: 5
    ICount: 12
    EdgeCount: 605
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Message:99"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Message:101"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Message:100"
        BranchSideFuncs:
        - "toString()"
        - "getLast(java.lang.Iterable)"
        - "convert(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.Message:98,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.spi.Message:99,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.spi.Message:100,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.spi.Message:101,1"
      Dst: "[com.google.common.collect.Iterables].getLast(java.lang.Iterable)"
    - Src: "com.google.inject.spi.Message:101,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Message].getSources()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:106,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].getMessage()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getMessage()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:111,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.MessageProcessor].visit(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.Message)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:117,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].getCause()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getCause()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:127,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].toString()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getMessage()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:132,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].hashCode()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:137,1"
      Dst: "[com.google.inject.spi.ErrorDetail].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    functionUses: 56
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Message:142"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Message:145"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Message:144"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.Message:146,1"
      Dst: "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.Message].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:152,1"
      Dst: "[com.google.inject.spi.Message].getSource()"
    - Src: "com.google.inject.spi.Message:152,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.Message:152,1"
      Dst: "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].withSource(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 1
    returnType: "com.google.inject.spi.Message"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError].withSources(java.util.List)"
    - "[com.google.inject.internal.GenericErrorDetail].withSources(java.util.List)"
    - "[com.google.inject.internal.DuplicateMapKeyError].withSources(java.util.List)"
    - "[com.google.inject.internal.MissingConstructorError].withSources(java.util.List)"
    - "[com.google.inject.internal.BindingAlreadySetError].withSources(java.util.List)"
    - "[com.google.inject.internal.MissingImplementationError].withSources(java.util.List)"
    - "[com.google.inject.internal.ScopeNotFoundError].withSources(java.util.List)"
    - "[com.google.inject.internal.DuplicateElementError].withSources(java.util.List)"
    - "[com.google.inject.spi.ErrorDetail].withSources(java.util.List)"
    functionUses: 1
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Message:161,1"
      Dst: "[com.google.inject.spi.ErrorDetail].withSources(java.util.List)"
    - Src: "com.google.inject.spi.Message:161,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Message].writeReplace()"
    functionSourceFile: "com.google.inject.spi.Message"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].getSources()"
    - "[java.util.List].toArray()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[java.lang.Object].toString()"
    - "[com.google.inject.spi.Message].getMessage()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    - "[com.google.inject.spi.Message].getCause()"
    - "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Message:171"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Message:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Message:170,1"
      Dst: "[com.google.inject.spi.Message].getSources()"
    - Src: "com.google.inject.spi.Message:170,1"
      Dst: "[java.util.List].toArray()"
    - Src: "com.google.inject.spi.Message:172,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.spi.Message:172,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.spi.Message:177,1"
      Dst: "[com.google.inject.spi.Message].getMessage()"
    - Src: "com.google.inject.spi.Message:177,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    - Src: "com.google.inject.spi.Message:177,1"
      Dst: "[com.google.inject.spi.Message].getCause()"
    - Src: "com.google.inject.spi.Message:177,1"
      Dst: "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - Src: "com.google.inject.spi.Message:177,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions:
      - "java.io.ObjectStreamException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InternalFlags].getIncludeStackTraceOption()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].getCustomClassLoadingOption()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$CustomClassLoadingOption"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].getSystemOption(java.lang.String,java.lang.Enum)"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 2
    returnType: "java.lang.Enum"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags].getSystemOption(java.lang.String,java.lang.Enum,java.lang.Enum)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags:172,1"
      Dst: "[com.google.inject.internal.InternalFlags].getSystemOption(java.lang.String,java.lang.Enum,java.lang.Enum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].getSystemOption(java.lang.String,java.lang.Enum,java.lang.Enum)"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "java.lang.Enum"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Enum"
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].getDeclaringClass()"
    - "[com.google.inject.internal.InternalFlags$1].<init>(java.lang.String)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[com.google.inject.internal.InternalFlags$1].run()"
    - "[java.lang.String].length()"
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - "[java.util.logging.Logger].warning(java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getEnumConstants()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 2
    ICount: 26
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalFlags:196"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFlags:185"
        BranchSideFuncs:
        - "warning(java.lang.String)"
        - "valueOf(java.lang.Class,java.lang.String)"
        - "getEnumConstants()"
        - "length()"
        - "asList(java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.InternalFlags:184"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "getDeclaringClass()"
        - "valueOf(java.lang.Class,java.lang.String)"
        - "<init>(java.lang.String)"
        - "length()"
    - Branch String: "com.google.inject.internal.InternalFlags:196"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFlags:185"
        BranchSideFuncs:
        - "warning(java.lang.String)"
        - "valueOf(java.lang.Class,java.lang.String)"
        - "getEnumConstants()"
        - "length()"
        - "asList(java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.InternalFlags:184"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "getDeclaringClass()"
        - "valueOf(java.lang.Class,java.lang.String)"
        - "<init>(java.lang.String)"
        - "length()"
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags:185,1"
      Dst: "[java.lang.Enum].getDeclaringClass()"
    - Src: "com.google.inject.internal.InternalFlags:188,1"
      Dst: "[com.google.inject.internal.InternalFlags$1].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.InternalFlags:189,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "com.google.inject.internal.InternalFlags:196,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.InternalFlags:196,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - Src: "com.google.inject.internal.InternalFlags:206,1"
      Dst: "[java.lang.Class].getEnumConstants()"
    - Src: "com.google.inject.internal.InternalFlags:206,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.internal.InternalFlags:206,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.util.List)"
    - Src: "com.google.inject.internal.InternalFlags:200,1"
      Dst: "[java.util.logging.Logger].warning(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$1].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$1"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$1:190,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags].<init>()"
    functionSourceFile: "com.google.inject.internal.InternalFlags"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags:211,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors$1].compare(com.google.inject.spi.Message,com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.Errors$1"
    linkageType: ""
    functionLinenumber: 693
    functionLinenumberEnd: 695
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Message"
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[com.google.inject.spi.Message].getSource()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors$1:694,1"
      Dst: "[com.google.inject.spi.Message].getSource()"
    - Src: "com.google.inject.internal.Errors$1:694,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors$1"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 692
    functionDepth: 9
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors$1].compare(com.google.inject.spi.Message,com.google.inject.spi.Message)"
    functionUses: 55
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors$1:691,1"
      Dst: "[com.google.inject.internal.Errors$1].compare(com.google.inject.spi.Message,com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].<init>(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 405
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Key"
    - "com.google.inject.internal.RealMultibinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:398,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].tryInitialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 515
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].permitsDuplicates(com.google.inject.Injector)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[com.google.common.collect.HashMultimap].create()"
    - "[com.google.inject.internal.Indexer].<init>(com.google.inject.Injector)"
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.inject.internal.InjectorImpl].findBindingsByType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].getElementTypeLiteral()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getKey()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getValueKey()"
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.ConstructorBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ExposedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.UntargettedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.common.collect.HashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].create()"
    - "[com.google.common.collect.LinkedHashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].bootstrap$()"
    - "[java.util.HashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].reportDuplicateKeysError(com.google.inject.Key,com.google.common.collect.Multimap,com.google.inject.internal.Errors)"
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 92
    EdgeCount: 460
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:413"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:421"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:420"
        BranchSideFuncs:
        - "<init>(com.google.inject.Injector)"
        - "<init>()"
        - "findBindingsByType(com.google.inject.TypeLiteral)"
        - "permitsDuplicates(com.google.inject.Injector)"
        - "getElementTypeLiteral()"
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:414"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:413"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:437"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:492"
        BranchSideFuncs:
        - "containsElement(com.google.inject.spi.Element)"
        - "findBindingsByType(com.google.inject.TypeLiteral)"
        - "getElementTypeLiteral()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:491"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:438"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:487"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:459"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:487"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:465"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:480"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:479"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:465"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:480"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:479"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:466"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:474"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:480"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:487"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:492"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:502"
        BranchSideFuncs:
        - "reportDuplicateKeysError(com.google.inject.Key,com.google.common.collect.Multimap,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:501"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "builder()"
        - "iterator()"
        - "entrySet()"
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:504"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:507"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getKey()"
        - "getValue()"
        - "put(java.lang.Object,java.lang.Object)"
        - "iterator()"
        - "entrySet()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:506"
        BranchSideFuncs:
        - "buildOrThrow()"
        - "copyOf(java.util.Map)"
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:421,1"
      Dst: "[com.google.inject.internal.RealMultibinder].permitsDuplicates(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:426,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:429,1"
      Dst: "[com.google.common.collect.HashMultimap].create()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:430,1"
      Dst: "[com.google.inject.internal.Indexer].<init>(com.google.inject.Injector)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:433,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:437,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getElementTypeLiteral()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:437,1"
      Dst: "[com.google.inject.internal.InjectorImpl].findBindingsByType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:437,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:437,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:437,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:438,1"
      Dst: "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:449,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:450,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:452,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getValueKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:453,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:459,1"
      Dst: "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:459,1"
      Dst: "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:461,1"
      Dst: "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:461,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:463,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:468,1"
      Dst: "[com.google.common.collect.LinkedHashMultimap].create()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:482,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].bootstrap$()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:483,1"
      Dst: "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:484,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:494,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].reportDuplicateKeysError(com.google.inject.Key,com.google.common.collect.Multimap,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:502,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:504,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:504,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:505,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:505,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:505,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:505,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:507,1"
      Dst: "[com.google.common.collect.ImmutableMap].copyOf(java.util.Map)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:508,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:510,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 23
    CyclomaticComplexity: 10
  - functionName: "[com.google.inject.internal.RealMultibinder].permitsDuplicates(com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates(com.google.inject.Injector)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:153,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates(com.google.inject.Injector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].getElementTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:145,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:157,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1238
    functionLinenumberEnd: 1240
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getValueKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1242
    functionLinenumberEnd: 1244
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192:-1,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].<init>()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].reportDuplicateKeysError(com.google.inject.Key,com.google.common.collect.Multimap,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 521
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.common.collect.Multimap"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].duplicateMapKey(com.google.inject.Key,com.google.common.collect.Multimap)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:519,1"
      Dst: "[com.google.inject.internal.Errors].duplicateMapKey(com.google.inject.Key,com.google.common.collect.Multimap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMultibinder].getSetKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetJakartaProviderKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].matchesValueKey(com.google.inject.Key)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:524"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:529"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:528"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:529"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:532"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:531"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:536"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:537"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:538"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:539"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:540"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:541"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:542"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:543"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:544"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:545"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:546"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:534"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:524,1"
      Dst: "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:530,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:535,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:535,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:536,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:537,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:538,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:539,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:540,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:541,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:542,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:543,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getSetKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:544,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetJakartaProviderKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:545,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:546,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].matchesValueKey(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 20
    CyclomaticComplexity: 13
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 564
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:560"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:563"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "mapOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:561,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:561,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 566
    functionLinenumberEnd: 572
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:568"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:571"
        BranchSideFuncs:
        - "ofType(com.google.inject.TypeLiteral)"
        - "mapOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:570"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:569,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:569,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder].getSetKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 1
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:141,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetJakartaProviderKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 622
    functionLinenumberEnd: 630
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMapBinder].setOfEntryOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:624"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:628"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:627,1"
      Dst: "[com.google.inject.internal.RealMapBinder].setOfEntryOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:627,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 633
    functionLinenumberEnd: 643
    functionDepth: 7
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:635"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:642"
        BranchSideFuncs:
        - "ofType(java.lang.reflect.Type)"
        - "subtypeOf(java.lang.reflect.Type)"
        - "getType()"
        - "mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:641"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:636,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:636,1"
      Dst: "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:637,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:640,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:124,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].matchesValueKey(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getAnnotation()"
    - "[com.google.inject.internal.RealElement].setName()"
    - "[com.google.inject.internal.RealMultibinder].getSetName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].type()"
    - "[com.google.inject.internal.RealElement].keyType()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:551"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:552"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:553"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:554"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:555"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:551,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:552,1"
      Dst: "[com.google.inject.internal.RealElement].setName()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:552,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getSetName()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:552,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:553,1"
      Dst: "[com.google.inject.internal.RealElement].type()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:554,1"
      Dst: "[com.google.inject.internal.RealElement].keyType()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:554,1"
      Dst: "[com.google.inject.TypeLiteral].toString()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:555,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:555,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapBindings()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 650
    functionLinenumberEnd: 653
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:651,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:651,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntries()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:656,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:656,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].permitsDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$BindingSelection:681"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:684"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$BindingSelection:683"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:681,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:684,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection].lambda$tryInitialize$0(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet$Builder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].builder()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection:483,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ElementSource].<init>(com.google.inject.spi.ElementSource,boolean,java.lang.Object,com.google.inject.spi.ModuleSource,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.spi.ElementSource"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.spi.ElementSource"
    - "boolean"
    - "java.lang.Object"
    - "com.google.inject.spi.ModuleSource"
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ElementSource:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ElementSource:88,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ElementSource].toString()"
    functionSourceFile: "com.google.inject.spi.ElementSource"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[java.security.Provider].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[java.util.concurrent.PriorityBlockingQueue].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[java.time.Period].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$2].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$2].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner2$1].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.net.InternetDomainName].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.primitives.Longs$LongConverter].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[com.google.common.base.Functions$IdentityFunction].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[com.google.common.collect.AllEqualOrdering].toString()"
    - "[com.google.common.primitives.Floats$LexicographicalComparator].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$2].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[com.google.common.primitives.SignedBytes$LexicographicalComparator].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[java.util.Formatter].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$7].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[com.google.common.io.CharSource$EmptyCharSource].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[java.util.concurrent.SynchronousQueue].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner3$1].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.base.Converter$IdentityConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[java.lang.Integer].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.common.util.concurrent.DirectExecutor].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[com.google.inject.Key].toString()"
    - "[java.util.concurrent.FutureTask].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$2].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[java.security.Permission].toString()"
    - "[com.google.common.base.CharMatcher$JavaLowerCase].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[com.google.common.primitives.Floats$FloatConverter].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[com.google.common.collect.Cut$BelowAll].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[com.google.inject.util.Providers$ConstantProvider].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner5$2].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[java.security.Timestamp].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.hash.MessageDigestHashFunction].toString()"
    - "[com.google.inject.internal.Scoping$5].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[java.security.Signature].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[java.util.Currency].toString()"
    - "[com.google.common.hash.MacHashFunction].toString()"
    - "[java.math.MathContext].toString()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[com.google.common.collect.Cut$AboveAll].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[java.net.Socket].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$4].toString()"
    - "[com.google.common.primitives.UnsignedLongs$LexicographicalComparator].toString()"
    - "[java.util.concurrent.ArrayBlockingQueue].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[java.util.logging.Level].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[java.time.LocalTime].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.net.URL].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.EmptyContiguousSet].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[java.time.Instant].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService$1].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.primitives.Doubles$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$4].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$1].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[javax.lang.model.element.Modifier].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[com.google.common.net.HostSpecifier].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[com.google.common.base.CharMatcher$JavaUpperCase].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.base.CharMatcher$JavaLetterOrDigit].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[java.math.BigInteger].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[java.lang.Package].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[com.google.common.collect.DiscreteDomain$LongDomain].toString()"
    - "[com.google.common.base.CharMatcher$NamedFastMatcher].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.primitives.Longs$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$1].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.common.primitives.Booleans$LexicographicalComparator].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.common.hash.Crc32cHashFunction].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.primitives.Ints$LexicographicalComparator].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[java.io.StringWriter].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.io.ByteSource$EmptyByteSource].toString()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[com.google.common.collect.DiscreteDomain$BigIntegerDomain].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.primitives.Booleans$BooleanComparator].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[com.google.common.primitives.Ints$IntConverter].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[java.util.Hashtable].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[com.google.common.reflect.TypeParameter].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.matcher.Matchers$Returns].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.CodeSource].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.matcher.Matchers$AndMatcher].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[com.google.common.primitives.Shorts$LexicographicalComparator].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.common.collect.Iterators$8].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Absent].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.common.collect.ReverseNaturalOrdering].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[java.util.Date].toString()"
    - "[com.google.common.util.concurrent.AbstractService$2].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].toString()"
    - "[java.util.BitSet].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[com.google.inject.spi.Elements$RecordingBinder].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.hash.Funnels$UnencodedCharsFunnel].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$4].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[java.util.Optional].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$3].toString()"
    - "[com.google.common.io.BaseEncoding$Alphabet].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[java.lang.Enum].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.inject.matcher.Matchers$Not].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Funnels$IntegerFunnel].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$1].toString()"
    - "[com.google.common.primitives.UnsignedInts$LexicographicalComparator].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.collect.UsingToStringOrdering].toString()"
    - "[com.google.inject.Scopes$1].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[com.google.common.base.Functions$ToStringFunction].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.time.ZoneId].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner3$2].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[com.google.inject.internal.ExposureBuilder].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[java.net.InetAddress].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[com.google.common.base.CharMatcher$JavaLetter].toString()"
    - "[java.lang.Module].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[java.util.Vector].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner5$1].toString()"
    - "[com.google.inject.matcher.Matchers$Only].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[com.google.common.io.Files$FilePredicate$2].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService$DelegateService].toString()"
    - "[java.util.Calendar].toString()"
    - "[com.google.common.hash.FarmHashFingerprint64].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[java.nio.file.attribute.AclEntry].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[com.google.inject.matcher.Matchers$Any].toString()"
    - "[com.google.common.primitives.Doubles$DoubleConverter].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner4$2].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[java.lang.String].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.inject.internal.MembersInjectorImpl].toString()"
    - "[com.google.common.collect.ImmutableEnumSet].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.hash.ChecksumHashFunction].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[com.google.common.hash.Fingerprint2011].toString()"
    - "[java.net.URI].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.inject.spi.MembersInjectorLookup$1].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner4$1].toString()"
    - "[com.google.common.primitives.Shorts$ShortConverter].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[java.util.Locale].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner2$2].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[com.google.common.base.CharMatcher$1].toString()"
    - "[com.google.common.primitives.Chars$LexicographicalComparator].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[java.util.concurrent.Semaphore].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.common.io.ByteStreams$1].toString()"
    - "[com.google.inject.Key$NullAnnotationStrategy].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.common.reflect.Types$TypeVariableImpl].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.reflect.ClassPath$ClassInfo].toString()"
    - "[com.google.common.base.CharMatcher$JavaDigit].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[com.google.common.hash.Funnels$LongFunnel].toString()"
    - "[com.google.common.io.Files$FilePredicate$1].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.collect.Ordering$ArbitraryOrdering].toString()"
    - "[com.google.common.base.CharMatcher$RangesMatcher].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[com.google.common.base.CharMatcher$BreakingWhitespace].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[com.google.common.math.LinearTransformation$NaNLinearTransformation].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.collect.NaturalOrdering].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].toString()"
    - "[java.time.LocalDate].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.hash.Funnels$ByteArrayFunnel].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[java.lang.Boolean].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.io.CharStreams$NullWriter].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[java.util.Properties].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.common.util.concurrent.AbstractService$1].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[com.google.common.collect.Iterables$8].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.Predicates$ObjectPredicate$3].toString()"
    - "[com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[com.google.common.collect.DiscreteDomain$IntegerDomain].toString()"
    - "[java.time.Duration].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].toString()"
    - "[java.net.Proxy].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 621
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ElementSource:128,1"
      Dst: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - Src: "com.google.inject.spi.ElementSource:128,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1:-1,1"
      Dst: "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].<init>()"
    functionSourceFile: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].buildEnhancerBuilder(java.lang.Class)"
    functionUses: 43
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].buildEnhancerBuilder(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 395
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].bootstrap$(java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].<init>(java.lang.Class[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208:-1,1"
      Dst: "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].<init>(java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].<init>(java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].apply(int)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.Enhancer].lambda$exceptionNames$0(java.lang.Class[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208:-1,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].lambda$exceptionNames$0(java.lang.Class[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer].lambda$exceptionNames$0(java.lang.Class[],int)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Class[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:420,1"
      Dst: "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].<init>(java.lang.Object,java.lang.Class,com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ScopeBinding:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ScopeBinding:45,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.inject.util.Modules$OverrideModule$3].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.inject.util.Modules$OverrideModule$1].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.inject.util.Modules$OverrideModule$2].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.inject.internal.ScopeBindingProcessor].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ScopeBinding:65,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].bindScope(java.lang.Class,com.google.inject.Scope)"
    - "[com.google.inject.spi.ScopeBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].bindScope(java.lang.Class,com.google.inject.Scope)"
    functionUses: 4
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ScopeBinding:70,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getSource()"
    - Src: "com.google.inject.spi.ScopeBinding:70,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.ScopeBinding:70,1"
      Dst: "[com.google.inject.Binder].bindScope(java.lang.Class,com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ScopeBinding].toString()"
    functionSourceFile: "com.google.inject.spi.ScopeBinding"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ScopeBinding:75,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.spi.ScopeBinding:76,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.spi.ScopeBinding:78,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.spi.ScopeBinding:79,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializables$1].get()"
    functionSourceFile: "com.google.inject.internal.Initializables$1"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializables$1].toString()"
    functionSourceFile: "com.google.inject.internal.Initializables$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializables$1:32,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup$1].injectMembers(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup$1"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup$1].injectMembers(java.lang.Object)"
    - "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.spi.MembersInjectorLookup$1:116"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup$1:120"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup$1:119"
        BranchSideFuncs:
        - "injectMembers(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup$1:117,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.spi.MembersInjectorLookup$1:120,1"
      Dst: "[com.google.inject.MembersInjector].injectMembers(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup$1].toString()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup$1"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup$1:125,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState].values()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState:352,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState:352,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState:352,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState].$values()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder$BindingSelection$InitializationState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getReturnType__74].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getReturnType__74"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getReturnType__74:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getReturnType__74].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getReturnType__74].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getReturnType__74"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getReturnType__74:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getReturnType__74].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getReturnType__74"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getReturnType()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getReturnType__74:-1,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].packArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - "[java.lang.Class].isPrimitive()"
    - "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 1
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:64"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:73"
        BranchSideFuncs:
        - "isPrimitive()"
        - "loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
        - "pushInteger(org.objectweb.asm.MethodVisitor,int)"
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:72"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:68"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:null"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:60,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:61,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:65,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:67,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:68,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:69,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:69,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    functionSourceFile: "com.google.inject.internal.aop.BytecodeTasks"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.Type].getSize()"
    functionUses: 3
    ICount: 12
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.BytecodeTasks:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:98"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.BytecodeTasks:97"
        BranchSideFuncs:
        - "getOpcode(int)"
        - "getType(java.lang.Class)"
        - "visitVarInsn(int,int)"
        - "getSize()"
    Callsites:
    - Src: "com.google.inject.internal.aop.BytecodeTasks:93,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:94,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:98,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:99,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "com.google.inject.internal.aop.BytecodeTasks:100,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.Scoping"
    - "java.util.Set"
    - "jakarta.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:61,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:62,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.ProviderMethod].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.spi.ProviderWithExtensionVisitor].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionUses: 4
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:68"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:72"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:71"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ProviderInstanceBinding)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:70,1"
      Dst: "[com.google.inject.spi.ProviderWithExtensionVisitor].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:72,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].getProviderInstance()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Providers].guicify(jakarta.inject.Provider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:77,1"
      Dst: "[com.google.inject.util.Providers].guicify(jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "jakarta.inject.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].getInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.ConstructorBindingImpl].getDependencies()"
    - "[com.google.inject.spi.ProviderLookup$1].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getDependencies()"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].getDependencies()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.InstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getDependencies()"
    - "[com.google.inject.internal.LinkedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.ExposedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.ProviderMethod:com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:com.google.inject.internal.RealMapBinder$RealProviderMapProvider:com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].getDependencies()"
    - "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    - "[com.google.inject.spi.HasDependencies].getDependencies()"
    functionUses: 3
    ICount: 13
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:94"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:93"
        BranchSideFuncs:
        - "forInjectionPoints(java.util.Set)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:93,1"
      Dst: "[com.google.inject.spi.HasDependencies].getDependencies()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:93,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:94,1"
      Dst: "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:100,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:100,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:100,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:106,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:106,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:106,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.BindingImpl:com.google.inject.internal.Scoping$1].getSource()"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(jakarta.inject.Provider)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(jakarta.inject.Provider)"
    - "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionUses: 4
    ICount: 12
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:111,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:113,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:113,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:114,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:114,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:115,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:115,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(jakarta.inject.Provider)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:112,1"
      Dst: "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:120,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:121,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:121,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:122,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:123,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:125,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 137
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:130"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:136"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:135"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:132"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderInstanceBindingImpl:134"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderInstanceBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:132,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:132,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:133,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:133,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:134,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ProviderInstanceBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.ProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:142,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:142,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ProviderInstanceBindingImpl:142,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158].bootstrap$(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractBindingProcessor$Processor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158:-1,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractBindingProcessor$Processor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158].run()"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].lambda$scheduleInitialization$0(com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleInitialization_0__158:-1,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].lambda$scheduleInitialization$0(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AnonymousClassDefiner].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.AnonymousClassDefiner"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 2
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.AnonymousClassDefiner:55"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.AnonymousClassDefiner:61"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.aop.AnonymousClassDefiner:60"
        BranchSideFuncs:
        - "invoke(java.lang.Object,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.aop.AnonymousClassDefiner:56,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.aop.AnonymousClassDefiner:61,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner].<init>()"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MultibindingsScanner:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner].asModule()"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner].scanner()"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.multibindings.MultibindingsScanner$1].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MultibindingsScanner:62,1"
      Dst: "[com.google.inject.multibindings.MultibindingsScanner$1].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner$1].<init>()"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleAnnotatedMethodScanner].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MultibindingsScanner$1:62,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScanner].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposureBuilder].<init>(com.google.inject.Binder,java.lang.Object,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Object"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposureBuilder:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposureBuilder].checkNotAnnotated()"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ExposureBuilder:38"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ExposureBuilder:41"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ExposureBuilder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ExposureBuilder:38,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.ExposureBuilder:39,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ExposureBuilder].annotatedWith(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.ExposureBuilder].checkNotAnnotated()"
    - "[com.google.inject.Key].withAnnotation(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposureBuilder:45,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ExposureBuilder:46,1"
      Dst: "[com.google.inject.internal.ExposureBuilder].checkNotAnnotated()"
    - Src: "com.google.inject.internal.ExposureBuilder:47,1"
      Dst: "[com.google.inject.Key].withAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposureBuilder].annotatedWith(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.ExposureBuilder].checkNotAnnotated()"
    - "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposureBuilder:52,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ExposureBuilder:53,1"
      Dst: "[com.google.inject.internal.ExposureBuilder].checkNotAnnotated()"
    - Src: "com.google.inject.internal.ExposureBuilder:54,1"
      Dst: "[com.google.inject.Key].withAnnotation(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposureBuilder].toString()"
    functionSourceFile: "com.google.inject.internal.ExposureBuilder"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$1].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Messages$1"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$1:211,1"
      Dst: "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$1].toString(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Messages$1"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$1:214,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$1].toString(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$1"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$1].toString(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$1:211,1"
      Dst: "[com.google.inject.internal.Messages$1].toString(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].stage(com.google.inject.Stage)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorShell$Builder"
    argCount: 1
    argTypes:
    - "com.google.inject.Stage"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].privateElements(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorShell$Builder"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ForwardingCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.ImmutableCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[com.google.inject.spi.PrivateElements].getElements()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:112,1"
      Dst: "[com.google.inject.spi.PrivateElements].getElements()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:112,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$Builder].addModules(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$Builder"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.nio.file.Path:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.LinkedList:java.util.PriorityQueue:java.util.ServiceLoader:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 265
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorShell$Builder:117"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:120"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectorShell$Builder:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$Builder:117,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:117,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:117,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorShell$Builder:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141:-1,1"
      Dst: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].<init>()"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$0(com.google.inject.internal.DuplicateElementError$Element)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141:-1,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$0(com.google.inject.internal.DuplicateElementError$Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].lambda$formatDetail$0(com.google.inject.internal.DuplicateElementError$Element)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.DuplicateElementError$Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.Double].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.common.base.Absent:com.google.common.base.CharMatcher$1:com.google.common.base.CharMatcher$BreakingWhitespace:com.google.common.base.CharMatcher$JavaDigit:com.google.common.base.CharMatcher$JavaLetter:com.google.common.base.CharMatcher$JavaLetterOrDigit:com.google.common.base.CharMatcher$JavaLowerCase:com.google.common.base.CharMatcher$JavaUpperCase:com.google.common.base.CharMatcher$NamedFastMatcher:com.google.common.base.CharMatcher$RangesMatcher:com.google.common.base.Converter$IdentityConverter:com.google.common.base.Functions$IdentityFunction:com.google.common.base.Functions$ToStringFunction:com.google.common.base.Predicates$ObjectPredicate$1:com.google.common.base.Predicates$ObjectPredicate$2:com.google.common.base.Predicates$ObjectPredicate$3:com.google.common.base.Predicates$ObjectPredicate$4:com.google.common.base.Suppliers$SupplierFunctionImpl:com.google.common.collect.AllEqualOrdering:com.google.common.collect.Cut$AboveAll:com.google.common.collect.Cut$BelowAll:com.google.common.collect.DiscreteDomain$BigIntegerDomain:com.google.common.collect.DiscreteDomain$IntegerDomain:com.google.common.collect.DiscreteDomain$LongDomain:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.Iterables$8:com.google.common.collect.Iterators$8:com.google.common.collect.NaturalOrdering:com.google.common.collect.Ordering$ArbitraryOrdering:com.google.common.collect.ReverseNaturalOrdering:com.google.common.collect.UsingToStringOrdering:com.google.common.hash.ChecksumHashFunction:com.google.common.hash.Crc32cHashFunction:com.google.common.hash.FarmHashFingerprint64:com.google.common.hash.Fingerprint2011:com.google.common.hash.Funnels$ByteArrayFunnel:com.google.common.hash.Funnels$IntegerFunnel:com.google.common.hash.Funnels$LongFunnel:com.google.common.hash.Funnels$UnencodedCharsFunnel:com.google.common.hash.MacHashFunction:com.google.common.hash.MessageDigestHashFunction:com.google.common.io.BaseEncoding$Alphabet:com.google.common.io.ByteSource$EmptyByteSource:com.google.common.io.ByteStreams$1:com.google.common.io.CharSource$EmptyCharSource:com.google.common.io.CharStreams$NullWriter:com.google.common.io.Files$FilePredicate$1:com.google.common.io.Files$FilePredicate$2:com.google.common.math.LinearTransformation$NaNLinearTransformation:com.google.common.net.HostSpecifier:com.google.common.net.InternetDomainName:com.google.common.primitives.Booleans$BooleanComparator:com.google.common.primitives.Booleans$LexicographicalComparator:com.google.common.primitives.Chars$LexicographicalComparator:com.google.common.primitives.Doubles$DoubleConverter:com.google.common.primitives.Doubles$LexicographicalComparator:com.google.common.primitives.Floats$FloatConverter:com.google.common.primitives.Floats$LexicographicalComparator:com.google.common.primitives.Ints$IntConverter:com.google.common.primitives.Ints$LexicographicalComparator:com.google.common.primitives.Longs$LexicographicalComparator:com.google.common.primitives.Longs$LongConverter:com.google.common.primitives.Shorts$LexicographicalComparator:com.google.common.primitives.Shorts$ShortConverter:com.google.common.primitives.SignedBytes$LexicographicalComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator:com.google.common.primitives.UnsignedInts$LexicographicalComparator:com.google.common.primitives.UnsignedLongs$LexicographicalComparator:com.google.common.reflect.ClassPath$ClassInfo:com.google.common.reflect.ClassPath$ResourceInfo:com.google.common.reflect.TypeParameter:com.google.common.reflect.TypeResolver$TypeVariableKey:com.google.common.reflect.Types$TypeVariableImpl:com.google.common.util.concurrent.AbstractExecutionThreadService$1:com.google.common.util.concurrent.AbstractIdleService$DelegateService:com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate:com.google.common.util.concurrent.AbstractService$1:com.google.common.util.concurrent.AbstractService$2:com.google.common.util.concurrent.ClosingFuture$2:com.google.common.util.concurrent.ClosingFuture$3:com.google.common.util.concurrent.ClosingFuture$4:com.google.common.util.concurrent.ClosingFuture$7:com.google.common.util.concurrent.ClosingFuture$Combiner2$1:com.google.common.util.concurrent.ClosingFuture$Combiner2$2:com.google.common.util.concurrent.ClosingFuture$Combiner3$1:com.google.common.util.concurrent.ClosingFuture$Combiner3$2:com.google.common.util.concurrent.ClosingFuture$Combiner4$1:com.google.common.util.concurrent.ClosingFuture$Combiner4$2:com.google.common.util.concurrent.ClosingFuture$Combiner5$1:com.google.common.util.concurrent.ClosingFuture$Combiner5$2:com.google.common.util.concurrent.DirectExecutor:com.google.common.util.concurrent.ServiceManager$1:com.google.common.util.concurrent.ServiceManager$2:com.google.inject.Key:com.google.inject.Key$NullAnnotationStrategy:com.google.inject.Scopes$1:com.google.inject.internal.ConstantBindingBuilderImpl:com.google.inject.internal.ExposureBuilder:com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.MembersInjectorImpl:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.Scoping$5:com.google.inject.internal.SingletonScope:com.google.inject.internal.TypeConverterBindingProcessor$1:com.google.inject.internal.TypeConverterBindingProcessor$2:com.google.inject.internal.TypeConverterBindingProcessor$3:com.google.inject.internal.TypeConverterBindingProcessor$4:com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:com.google.inject.matcher.Matchers$AndMatcher:com.google.inject.matcher.Matchers$AnnotatedWith:com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo:com.google.inject.matcher.Matchers$InSubpackage:com.google.inject.matcher.Matchers$Not:com.google.inject.matcher.Matchers$Only:com.google.inject.matcher.Matchers$OrMatcher:com.google.inject.matcher.Matchers$Returns:com.google.inject.spi.Elements$RecordingBinder:com.google.inject.spi.MembersInjectorLookup$1:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.text.AttributedCharacterIterator$Attribute:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.SynchronousQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.lang.model.element.Modifier:javax.security.auth.Subject:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].toString()"
    functionUses: 1
    ICount: 4
    EdgeCount: 299
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:48,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError$Element].<init>(java.lang.Object,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError$Element"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError$Element:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$1].run()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$1"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$1:193,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.PrivilegedAction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206:-1,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].run()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206:-1,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader:78,1"
      Dst: "[java.lang.ClassLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].parent()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "java.util.Optional"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.Optional].isPresent()"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 7
    ICount: 16
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:88"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:91"
        BranchSideFuncs:
        - "getExplicitBinding(com.google.inject.Key)"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:90"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorBindingData:88"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:91"
        BranchSideFuncs:
        - "getExplicitBinding(com.google.inject.Key)"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:87,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorBindingData:88,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:89,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:89,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorBindingData].putBinding(com.google.inject.Key<?>,com.google.inject.internal.BindingImpl<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.internal.BindingImpl<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:99,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].putProviderLookup(com.google.inject.spi.ProviderLookup<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderLookup<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:103,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].putStaticInjectionRequest(com.google.inject.spi.StaticInjectionRequest)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.StaticInjectionRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:111,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].putInjectionRequest(com.google.inject.spi.InjectionRequest<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionRequest<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:119,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].putMembersInjectorLookup(com.google.inject.spi.MembersInjectorLookup<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.MembersInjectorLookup<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:127,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getScopeBinding(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "com.google.inject.spi.ScopeBinding"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Optional].isPresent()"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getScopeBinding(java.lang.Class)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 15
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:136"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:139"
        BranchSideFuncs:
        - "getScopeBinding(java.lang.Class)"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:138"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorBindingData:136"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:139"
        BranchSideFuncs:
        - "getScopeBinding(java.lang.Class)"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:135,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorBindingData:136,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:137,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:137,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScopeBinding(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorBindingData].putScopeBinding(java.lang.Class<?\
      \ extends Annotation>,com.google.inject.spi.ScopeBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    - "com.google.inject.spi.ScopeBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:143,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].addConverter(com.google.inject.spi.TypeConverterBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.TypeConverterBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:155,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getConverter(java.lang.String,com.google.inject.TypeLiteral<?>,com.google.inject.internal.Errors,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "com.google.inject.spi.TypeConverterBinding"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.internal.Errors"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.TypeConverterBinding].getTypeMatcher()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.internal.Errors].ambiguousTypeConversion(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,com.google.inject.spi.TypeConverterBinding)"
    - "[java.util.Optional].orElse(java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].parent()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 320
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:173"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getConvertersThisLevel()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:172"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorBindingData:163"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:171"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
        - "hasNext()"
        - "getTypeMatcher()"
        - "iterator()"
        - "getConvertersThisLevel()"
        - "next()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:170"
        BranchSideFuncs:
        - "parent()"
        - "orElse(java.lang.Object)"
    - Branch String: "com.google.inject.internal.InjectorBindingData:164"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:170"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InjectorBindingData:169"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorBindingData:165"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:168"
        BranchSideFuncs:
        - "ambiguousTypeConversion(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,com.google.inject.spi.TypeConverterBinding)"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:163,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getConvertersThisLevel()"
    - Src: "com.google.inject.internal.InjectorBindingData:163,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.internal.InjectorBindingData:163,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.InjectorBindingData:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.InjectorBindingData:164,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getTypeMatcher()"
    - Src: "com.google.inject.internal.InjectorBindingData:164,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorBindingData:166,1"
      Dst: "[com.google.inject.internal.Errors].ambiguousTypeConversion(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.spi.TypeConverterBinding,com.google.inject.spi.TypeConverterBinding)"
    - Src: "com.google.inject.internal.InjectorBindingData:171,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].parent()"
    - Src: "com.google.inject.internal.InjectorBindingData:171,1"
      Dst: "[java.util.Optional].orElse(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.TypeConverterBinding].getTypeMatcher()"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].getInterceptorBindings()"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 188
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].isPresent()"
    - "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[java.util.Optional].get()"
    - "[com.google.inject.internal.InjectorBindingData].getInterceptorBindings()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorBindingData:181"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorBindingData:187"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InjectorBindingData:186"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:181,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorBindingData:182,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].<init>()"
    - Src: "com.google.inject.internal.InjectorBindingData:183,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorBindingData:183,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getInterceptorBindings()"
    - Src: "com.google.inject.internal.InjectorBindingData:183,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.InjectorBindingData:185,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.InjectorBindingData:187,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorBindingData].addScanner(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    functionSourceFile: "com.google.inject.internal.InjectorBindingData"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorBindingData:231,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].hasAttributes()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 482
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].withoutAttributes()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionDepth: 0
    returnType: "com.google.inject.Key$AnnotationStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:486,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].getAnnotation()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 492
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].getAnnotationType()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 500
    functionLinenumberEnd: 507
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 57
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.Key$AnnotationTypeStrategy:501"
      Branch Sides:
      - BranchSide: "com.google.inject.Key$AnnotationTypeStrategy:505"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key$AnnotationTypeStrategy:504"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:506,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].hashCode()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 510
    functionLinenumberEnd: 512
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 35
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:511,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    functionSourceFile: "com.google.inject.Key$AnnotationTypeStrategy"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].annotationInstanceClassString(java.lang.Class,boolean)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$AnnotationTypeStrategy:516,1"
      Dst: "[com.google.inject.internal.Annotations].annotationInstanceClassString(java.lang.Class,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].annotationInstanceClassString(java.lang.Class,boolean)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 278
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getPackage()"
    - "[java.lang.Class].getName()"
    - "[java.lang.Package].getName()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[com.google.inject.internal.Annotations].dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:271"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:277"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:276"
        BranchSideFuncs:
        - "dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    - Branch String: "com.google.inject.internal.Annotations:272"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:273"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:272"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:272"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:275"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:274"
        BranchSideFuncs:
        - "substring(int)"
        - "getName()"
        - "getPackage()"
        - "length()"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:272,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.internal.Annotations:273,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.Annotations:273,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.Annotations:275,1"
      Dst: "[java.lang.Package].getName()"
    - Src: "com.google.inject.internal.Annotations:275,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.Annotations:275,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "com.google.inject.internal.Annotations:277,1"
      Dst: "[com.google.inject.internal.Annotations].dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 290
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaringClass()"
    - "[java.lang.Package].getName()"
    - "[java.lang.Class].getPackage()"
    - "[java.lang.Class].getSimpleName()"
    - "[com.google.inject.internal.Annotations].dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:281"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:287"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:286"
        BranchSideFuncs:
        - "dotSeparatedParentOrPackage(java.lang.Class,boolean)"
        - "getDeclaringClass()"
    - Branch String: "com.google.inject.internal.Annotations:282"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:285"
        BranchSideFuncs:
        - "getName()"
        - "getPackage()"
      - BranchSide: "com.google.inject.internal.Annotations:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:281,1"
      Dst: "[java.lang.Class].getDeclaringClass()"
    - Src: "com.google.inject.internal.Annotations:283,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.internal.Annotations:283,1"
      Dst: "[java.lang.Package].getName()"
    - Src: "com.google.inject.internal.Annotations:283,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.internal.Annotations:283,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.Annotations:287,1"
      Dst: "[com.google.inject.internal.Annotations].dotSeparatedParentOrPackage(java.lang.Class,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$Source].values()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$Source"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealOptionalBinder$Source[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$Source:119,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$Source].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$Source"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealOptionalBinder$Source"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$Source:119,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$Source].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$Source"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$Source:119,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$Source].$values()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$Source"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealOptionalBinder$Source[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 254
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDependency()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:249"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:253"
        BranchSideFuncs:
        - "getBinding()"
        - "getInternalFactory()"
        - "getDependency()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:249,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:250,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:251,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDependency()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 274
    functionDepth: 1
    returnType: "java.util.Optional"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].empty()"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[java.util.Optional].ofNullable(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 2
    ICount: 15
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:260"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:263"
        BranchSideFuncs:
        - "empty()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:262"
        BranchSideFuncs:
        - "get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
        - "addSource(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:261,1"
      Dst: "[java.util.Optional].empty()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:269,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:271,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:273,1"
      Dst: "[java.util.Optional].ofNullable(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    - "com.google.inject.spi.ProviderInstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.OptionalBinderBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:285"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:288"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:287"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ProviderInstanceBinding)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:286,1"
      Dst: "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.OptionalBinderBinding)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:288,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:294,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getActualBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Binding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getActualBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:299,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getActualBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getDefaultBinding()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Binding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDefaultBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:304,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDefaultBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getKey()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].getAlternateKeys()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfProvider(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:314,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getDirectKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:315,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:317,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:317,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:318,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].javaOptionalOfJakartaProvider(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:316,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.PrivilegedExceptionAction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].run()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.HiddenClassDefiner].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$init__40:-1,1"
      Dst: "[com.google.inject.internal.aop.HiddenClassDefiner].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.HiddenClassDefiner].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.HiddenClassDefiner"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.util.Modules$RealOverriddenModuleBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:192,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:192,1"
      Dst: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.util.Modules$RealOverriddenModuleBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$OverrideModule].<init>(java.lang.Iterable,com.google.common.collect.ImmutableSet)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:202,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule].<init>(java.lang.Iterable,com.google.common.collect.ImmutableSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'()"
    functionSourceFile: "com.google.inject.util.Modules$RealOverriddenModuleBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.Module"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:197,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.util.Modules$RealOverriddenModuleBuilder:197,1"
      Dst: "[com.google.inject.util.Modules$RealOverriddenModuleBuilder].'with'(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToPrimitiveType(com.google.inject.internal.InjectorImpl,java.lang.Class<T>,java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 148
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "java.lang.Class<T>"
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor].capitalize(java.lang.String)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.Class].getName()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].<init>(java.lang.reflect.Method,java.lang.Class)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClass(com.google.inject.internal.InjectorImpl,java.lang.Class,com.google.inject.spi.TypeConverter)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 7
    ICount: 18
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:122,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:122,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].capitalize(java.lang.String)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:122,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:122,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:124,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$5].<init>(java.lang.reflect.Method,java.lang.Class)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:143,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClass(com.google.inject.internal.InjectorImpl,java.lang.Class,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:145,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].capitalize(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].toUpperCase(char)"
    - "[java.lang.String].substring(int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(char,java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.TypeConverterBindingProcessor:196"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor:199"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor:198"
        BranchSideFuncs:
        - "toUpperCase(char)"
        - "substring(int)"
        - "charAt(int)"
    - Branch String: "com.google.inject.internal.TypeConverterBindingProcessor:201"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor:198"
        BranchSideFuncs:
        - "toUpperCase(char)"
        - "substring(int)"
        - "charAt(int)"
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:196,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:199,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:200,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:201,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:201,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(char,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$5].<init>(java.lang.reflect.Method,java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$5"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:125,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClass(com.google.inject.internal.InjectorImpl,java.lang.Class<T>,com.google.inject.spi.TypeConverter)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "java.lang.Class<T>"
    - "com.google.inject.spi.TypeConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClasses(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.matcher.Matchers].identicalTo(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:151,1"
      Dst: "[com.google.inject.matcher.Matchers].identicalTo(java.lang.Object)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:151,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClasses(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].identicalTo(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Object>"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$IdenticalTo].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:255,1"
      Dst: "[com.google.inject.matcher.Matchers$IdenticalTo].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$IdenticalTo].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$IdenticalTo"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$IdenticalTo:261,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$IdenticalTo:262,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].convertToClasses(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher<?\
      \ super Class<?>>,com.google.inject.spi.TypeConverter)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 176
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.matcher.Matcher<? super Class<?>>"
    - "com.google.inject.spi.TypeConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].<init>(com.google.inject.matcher.Matcher)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor].internalConvertToTypes(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:156,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$6].<init>(com.google.inject.matcher.Matcher)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:156,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor].internalConvertToTypes(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$6].<init>(com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$6"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$6:158,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].internalConvertToTypes(com.google.inject.internal.InjectorImpl,com.google.inject.matcher.Matcher<?\
      \ super TypeLiteral<?>>,com.google.inject.spi.TypeConverter)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.matcher.Matcher<? super TypeLiteral<?>>"
    - "com.google.inject.spi.TypeConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].addConverter(com.google.inject.spi.TypeConverterBinding)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:180,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:180,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:181,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addConverter(com.google.inject.spi.TypeConverterBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.spi.TypeConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeConverterBinding:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.TypeConverterBinding:46,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor].visit(com.google.inject.spi.TypeConverterBinding)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.TypeConverterBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].addConverter(com.google.inject.spi.TypeConverterBinding)"
    - "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.spi.TypeConverterBinding].getSource()"
    - "[com.google.inject.spi.TypeConverterBinding].getTypeConverter()"
    - "[com.google.inject.spi.TypeConverterBinding].getTypeMatcher()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:188,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:191,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getSource()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:191,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getTypeMatcher()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:191,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getTypeConverter()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:191,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:189,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addConverter(com.google.inject.spi.TypeConverterBinding)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor:192,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].bootstrap$(com.google.common.collect.ImmutableList)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].<init>(com.google.common.collect.ImmutableList)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].<init>(com.google.common.collect.ImmutableList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].<init>(com.google.common.collect.ImmutableList)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$4(com.google.common.collect.ImmutableList,com.google.inject.Binding)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$4(com.google.common.collect.ImmutableList,com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$4(com.google.common.collect.ImmutableList,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.common.collect.ImmutableList"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedAsList].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableAsList].contains(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:274"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:273"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:274,1"
      Dst: "[com.google.common.collect.ImmutableList].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92:-1,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].<init>()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92:-1,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMultibinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getDependencies()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:221,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getDependencies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInternalFactory$1].<init>(com.google.inject.internal.ProviderInternalFactory,jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    functionSourceFile: "com.google.inject.internal.ProviderInternalFactory$1"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.ProviderInternalFactory"
    - "jakarta.inject.Provider"
    - "com.google.inject.spi.Dependency"
    - "com.google.inject.internal.ConstructionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInternalFactory$1:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderInternalFactory$1].call()"
    functionSourceFile: "com.google.inject.internal.ProviderInternalFactory$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BoundProviderFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderInternalFactory$1:67,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$1].<init>(java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "com.google.common.reflect.Types$1"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.TypeVisitor].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$1:175,1"
      Dst: "[com.google.common.reflect.TypeVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$1].visitTypeVariable(java.lang.reflect.TypeVariable)"
    functionSourceFile: "com.google.common.reflect.Types$1"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.TypeVariable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$100(java.lang.reflect.Type[])"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[java.lang.reflect.TypeVariable].getBounds()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$1:178,1"
      Dst: "[java.lang.reflect.TypeVariable].getBounds()"
    - Src: "com.google.common.reflect.Types$1:178,1"
      Dst: "[com.google.common.reflect.Types].access$100(java.lang.reflect.Type[])"
    - Src: "com.google.common.reflect.Types$1:178,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].access$100(java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 5
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].subtypeOfComponentType(java.lang.reflect.Type[])"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:56,1"
      Dst: "[com.google.common.reflect.Types].subtypeOfComponentType(java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].subtypeOfComponentType(java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 220
    functionDepth: 4
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].getComponentType(java.lang.reflect.Type)"
    - "[java.lang.Class].isPrimitive()"
    - "[com.google.common.reflect.Types].subtypeOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:205"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:219"
        BranchSideFuncs:
        - "getComponentType(java.lang.reflect.Type)"
      - BranchSide: "com.google.common.reflect.Types:218"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types:207"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:204"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types:210"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:216"
        BranchSideFuncs:
        - "isPrimitive()"
      - BranchSide: "com.google.common.reflect.Types:215"
        BranchSideFuncs:
        - "subtypeOf(java.lang.reflect.Type)"
    - Branch String: "com.google.common.reflect.Types:212"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:216"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types:215"
        BranchSideFuncs:
        - "subtypeOf(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.common.reflect.Types:206,1"
      Dst: "[com.google.common.reflect.Types].getComponentType(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types:212,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.common.reflect.Types:216,1"
      Dst: "[com.google.common.reflect.Types].subtypeOf(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types].getComponentType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 197
    functionDepth: 1
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[com.google.common.reflect.Types$1].<init>(java.util.concurrent.atomic.AtomicReference)"
    - "[com.google.common.reflect.TypeVisitor].visit(java.lang.reflect.Type[])"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:173,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types:174,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "com.google.common.reflect.Types:175,1"
      Dst: "[com.google.common.reflect.Types$1].<init>(java.util.concurrent.atomic.AtomicReference)"
    - Src: "com.google.common.reflect.Types:195,1"
      Dst: "[com.google.common.reflect.TypeVisitor].visit(java.lang.reflect.Type[])"
    - Src: "com.google.common.reflect.Types:196,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].subtypeOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 3
    returnType: "java.lang.reflect.WildcardType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:153,1"
      Dst: "[com.google.common.reflect.Types$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 479
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type[]"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type[])"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:473,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:474,1"
      Dst: "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:476,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].disallowPrimitiveType(java.lang.reflect.Type[],java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:56,1"
      Dst: "[com.google.common.reflect.Types].disallowPrimitiveType(java.lang.reflect.Type[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].disallowPrimitiveType(java.lang.reflect.Type[],java.lang.String)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 528
    functionLinenumberEnd: 536
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].isPrimitive()"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:529"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:535"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types:534"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types:530"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:529"
        BranchSideFuncs:
        - "isPrimitive()"
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Types:528"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types:532"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:530"
        BranchSideFuncs:
        - "isPrimitive()"
        - "checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.common.reflect.Types:532,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.common.reflect.Types:532,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.common.reflect.Types$1].visitWildcardType(java.lang.reflect.WildcardType)"
    functionSourceFile: "com.google.common.reflect.Types$1"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.WildcardType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$100(java.lang.reflect.Type[])"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$1:183,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.common.reflect.Types$1:183,1"
      Dst: "[com.google.common.reflect.Types].access$100(java.lang.reflect.Type[])"
    - Src: "com.google.common.reflect.Types$1:183,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$1].visitGenericArrayType(java.lang.reflect.GenericArrayType)"
    functionSourceFile: "com.google.common.reflect.Types$1"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.GenericArrayType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$1:188,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.common.reflect.Types$1:188,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$1].visitClass(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Types$1"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getComponentType()"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$1:193,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "com.google.common.reflect.Types$1:193,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].<init>(com.google.inject.spi.InjectionPoint,java.util.function.Function,com.google.common.collect.ImmutableMap,java.lang.reflect.InvocationHandler[])"
    functionSourceFile: "com.google.inject.internal.ProxyFactory$ProxyConstructor"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "java.util.function.Function"
    - "com.google.common.collect.ImmutableMap"
    - "java.lang.reflect.InvocationHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.BytecodeGen].enhancedConstructor(java.util.function.Function,java.lang.reflect.Constructor)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProxyFactory$ProxyConstructor:172,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProxyFactory$ProxyConstructor:174,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ProxyFactory$ProxyConstructor:175,1"
      Dst: "[com.google.inject.internal.BytecodeGen].enhancedConstructor(java.util.function.Function,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].newInstance(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.ProxyFactory$ProxyConstructor"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProxyFactory$ProxyConstructor:183,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getInjectionPoint()"
    functionSourceFile: "com.google.inject.internal.ProxyFactory$ProxyConstructor"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getConstructor()"
    functionSourceFile: "com.google.inject.internal.ProxyFactory$ProxyConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Constructor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getMethodInterceptors()"
    functionSourceFile: "com.google.inject.internal.ProxyFactory$ProxyConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$IdenticalTo"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$IdenticalTo:267"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$IdenticalTo:266"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$IdenticalTo"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$IdenticalTo:272"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$IdenticalTo:271"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$IdenticalTo:272"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$IdenticalTo:271"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$IdenticalTo"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$IdenticalTo:277,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$IdenticalTo].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$IdenticalTo"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$IdenticalTo:282,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$InjectorOptions"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,boolean)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 15
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:97,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:97,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:98,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:99,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,boolean)"
    - Src: "com.google.inject.internal.InjectorImpl$InjectorOptions:103,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$ModuleWriter].visitOther(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.util.Modules$ModuleWriter"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.LinkedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ExposedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.MembersInjectorLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.UntargettedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.StaticInjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Message].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeConverterBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.PrivateElementsImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProvisionListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ConstructorBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ScopeBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InterceptorBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProviderLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    functionUses: 17
    ICount: 5
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$ModuleWriter:383,1"
      Dst: "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].apply(int)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$2(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$2(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$2(int)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidedByInternalFactory].setProvisionListenerCallback(com.google.inject.internal.ProvisionListenerStackCallback<T>)"
    functionSourceFile: "com.google.inject.internal.ProvidedByInternalFactory"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ProvisionListenerStackCallback<T>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidedByInternalFactory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ProvidedByInternalFactory"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:55,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.ProvidedByInternalFactory"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 12
    ICount: 19
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvidedByInternalFactory:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:65"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:64"
        BranchSideFuncs:
        - "circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
        - "get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
        - "getInternalFactory()"
    Callsites:
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:63,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:68,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:68,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:69,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:71,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvidedByInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    functionSourceFile: "com.google.inject.internal.ProvidedByInternalFactory"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "jakarta.inject.Provider"
    - "com.google.inject.spi.Dependency"
    - "com.google.inject.internal.ConstructionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].subtypeNotProvided(java.lang.Class,java.lang.Class)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvidedByInternalFactory:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:88"
        BranchSideFuncs:
        - "subtypeNotProvided(java.lang.Class,java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:87"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvidedByInternalFactory:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:88"
        BranchSideFuncs:
        - "subtypeNotProvided(java.lang.Class,java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProvidedByInternalFactory:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:82,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:83,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:84,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].subtypeNotProvided(java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:90,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    - Src: "com.google.inject.internal.ProvidedByInternalFactory:90,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback].<init>(java.lang.reflect.Method,java.util.List,java.util.function.BiFunction)"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Method"
    - "java.util.List"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.ForwardingCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:49,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback].invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Method"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].<init>(com.google.inject.internal.InterceptorStackCallback,java.lang.Object,java.lang.Object[],int)"
    - "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].proceed()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback:55,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].<init>(com.google.inject.internal.InterceptorStackCallback,java.lang.Object,java.lang.Object[],int)"
    - Src: "com.google.inject.internal.InterceptorStackCallback:55,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].proceed()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].<init>(com.google.inject.internal.InterceptorStackCallback,java.lang.Object,java.lang.Object[],int)"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InterceptorStackCallback"
    - "java.lang.Object"
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].proceed()"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].<init>(com.google.inject.internal.InterceptorStackCallback,java.lang.Object,java.lang.Object[],int)"
    - "[org.aopalliance.intercept.MethodInterceptor].invoke(org.aopalliance.intercept.MethodInvocation)"
    - "[com.google.inject.internal.InterceptorStackCallback].pruneStacktrace(java.lang.Throwable)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:73"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:75"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:74,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:75,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].<init>(com.google.inject.internal.InterceptorStackCallback,java.lang.Object,java.lang.Object[],int)"
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:75,1"
      Dst: "[org.aopalliance.intercept.MethodInterceptor].invoke(org.aopalliance.intercept.MethodInvocation)"
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:78,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback].pruneStacktrace(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback].pruneStacktrace(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getStackTrace()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.lang.StackTraceElement].getClassName()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    - "[java.lang.Throwable].getCause()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InterceptorStackCallback:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:122"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:121"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InterceptorStackCallback:112"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:null"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InterceptorStackCallback:114"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:110"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:109"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InterceptorStackCallback:115"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:110"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:109"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InterceptorStackCallback:116"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:110"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InterceptorStackCallback:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback:110,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:111,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:113,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:114,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:114,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "com.google.inject.internal.InterceptorStackCallback:116,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.InterceptorStackCallback:117,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InterceptorStackCallback:120,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.InterceptorStackCallback:120,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "com.google.inject.internal.InterceptorStackCallback:120,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    - Src: "com.google.inject.internal.InterceptorStackCallback:109,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.Messages$ThrowableEquivalence].<init>()"
    functionSourceFile: "com.google.inject.internal.Messages$ThrowableEquivalence"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Equivalence].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:258,1"
      Dst: "[com.google.common.base.Equivalence].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$ThrowableEquivalence].doEquivalent(java.lang.Throwable,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Messages$ThrowableEquivalence"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[com.google.inject.CreationException].getMessage()"
    - "[com.google.inject.ProvisionException].getMessage()"
    - "[org.aopalliance.aop.AspectException].getMessage()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$PotentialDeadlockException].getMessage()"
    - "[com.google.inject.ConfigurationException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - "[java.lang.Throwable].getStackTrace()"
    - "[com.google.common.base.Equivalence].equivalent(java.lang.Object,java.lang.Object)"
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[org.aopalliance.aop.AspectException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.nio.file.DirectoryIteratorException].getCause()"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    functionUses: 1
    ICount: 23
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages$ThrowableEquivalence:263"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "getMessage()"
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages$ThrowableEquivalence:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-1"
        BranchSideFuncs:
        - "getStackTrace()"
        - "equals(java.lang.Object[],java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages$ThrowableEquivalence:265"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-1"
        BranchSideFuncs:
        - "equivalent(java.lang.Object,java.lang.Object)"
        - "getCause()"
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages$ThrowableEquivalence:266"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$ThrowableEquivalence:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:263,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:263,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:264,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:264,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:265,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:265,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:266,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:266,1"
      Dst: "[com.google.common.base.Equivalence].equivalent(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.Messages$ThrowableEquivalence].doHash(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Messages$ThrowableEquivalence"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[org.aopalliance.aop.AspectException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.nio.file.DirectoryIteratorException].getCause()"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    - "[java.lang.Object].getClass()"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[com.google.inject.CreationException].getMessage()"
    - "[com.google.inject.ProvisionException].getMessage()"
    - "[org.aopalliance.aop.AspectException].getMessage()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$PotentialDeadlockException].getMessage()"
    - "[com.google.inject.ConfigurationException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[com.google.common.base.Equivalence].hash(java.lang.Object)"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    - "[java.lang.Object].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[com.google.common.base.Equivalence].hash(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:271,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$ThrowableEquivalence].doHash(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$ThrowableEquivalence"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$ThrowableEquivalence].doHash(java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:258,1"
      Dst: "[com.google.inject.internal.Messages$ThrowableEquivalence].doHash(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$ThrowableEquivalence].doEquivalent(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$ThrowableEquivalence"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$ThrowableEquivalence].doEquivalent(java.lang.Throwable,java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$ThrowableEquivalence:258,1"
      Dst: "[com.google.inject.internal.Messages$ThrowableEquivalence].doEquivalent(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$1].<init>()"
    functionSourceFile: "com.google.inject.internal.Annotations$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.CacheLoader].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$1:74,1"
      Dst: "[com.google.common.cache.CacheLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$1].load(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations$1"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].generateAnnotationImpl(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$1:77,1"
      Dst: "[com.google.inject.internal.Annotations].generateAnnotationImpl(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].generateAnnotationImpl(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].resolveMembers(java.lang.Class)"
    - "[java.lang.Class].cast(java.lang.Object)"
    - "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - "[com.google.inject.internal.Annotations$2].<init>(java.lang.Class,java.util.Map)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:93,1"
      Dst: "[com.google.inject.internal.Annotations].resolveMembers(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:96,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.Annotations:96,1"
      Dst: "[com.google.inject.internal.Annotations$2].<init>(java.lang.Class,java.util.Map)"
    - Src: "com.google.inject.internal.Annotations:95,1"
      Dst: "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - Src: "com.google.inject.internal.Annotations:94,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].resolveMembers(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.reflect.Method].getDefaultValue()"
    - "[java.lang.reflect.Method].getName()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    functionUses: 1
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:120"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:122"
        BranchSideFuncs:
        - "buildOrThrow()"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:119,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.Annotations:120,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.Annotations:121,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.Annotations:121,1"
      Dst: "[java.lang.reflect.Method].getDefaultValue()"
    - Src: "com.google.inject.internal.Annotations:121,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:123,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations$2].<init>(java.lang.Class,java.util.Map)"
    functionSourceFile: "com.google.inject.internal.Annotations$2"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$2:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$1].load(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Annotations$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations$1].load(java.lang.Class)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$1:74,1"
      Dst: "[com.google.inject.internal.Annotations$1].load(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DelegatingInvocationHandler].<init>()"
    functionSourceFile: "com.google.inject.internal.DelegatingInvocationHandler"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DelegatingInvocationHandler].invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.DelegatingInvocationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Method"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:34,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:40,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:50,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:52,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - Src: "com.google.inject.internal.DelegatingInvocationHandler:56,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DelegatingInvocationHandler].setDelegate(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DelegatingInvocationHandler"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$4].visitScope(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$4"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$6].<init>()"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$6"
    linkageType: ""
    functionLinenumber: 642
    functionLinenumberEnd: 644
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.TypeCapture].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$6:643,1"
      Dst: "[com.google.common.reflect.TypeCapture].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].tryAccessDefineClass(java.lang.Class)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder$tryAccessDefineClass__202:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].tryAccessDefineClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].isAccessible()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:101"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:100"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].canLoadProxyByName(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:106"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:105"
        BranchSideFuncs:
        - "getClassLoader()"
        - "findClassDefiner(java.lang.ClassLoader)"
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:106,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:106,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 3
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:121"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:122"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:121"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:121"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:123"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:122"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:123"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:127"
        BranchSideFuncs:
        - "getUnchecked(java.lang.Object)"
        - "getClass()"
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:128,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:128,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].canDowncastToProxy(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.UnsafeClassDefiner:111"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeClassDefiner:110"
        BranchSideFuncs:
        - "getClassLoader()"
        - "findClassDefiner(java.lang.ClassLoader)"
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:111,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:111,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.HiddenClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.AnonymousClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.GeneratedClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    - "[java.lang.Class].getClassLoader()"
    - "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:116,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:116,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].findClassDefiner(java.lang.ClassLoader)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:116,1"
      Dst: "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].tryPrivileged(java.security.PrivilegedExceptionAction<T>,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.security.PrivilegedExceptionAction<T>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[com.google.common.util.concurrent.AbstractFuture$UnsafeAtomicHelper$1].run()"
    - "[com.google.common.hash.Striped64$1].run()"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$init__40].run()"
    - "[jdk.internal.loader.BuiltinClassLoader$2].run()"
    - "[jdk.internal.loader.URLClassPath$3].run()"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$init__39].run()"
    - "[jdk.internal.loader.BuiltinClassLoader$3].run()"
    - "[com.google.common.cache.Striped64$1].run()"
    - "[jdk.internal.loader.Loader$1].run()"
    - "[com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator$1].run()"
    - "[jdk.internal.loader.Loader$2].run()"
    - "[jdk.internal.loader.URLClassPath$JarLoader$3].run()"
    - "[jdk.internal.loader.URLClassPath$JarLoader$1].run()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:134,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:136,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].tryAccessDefineClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$lambda_tryAccessDefineClass_0__212].bootstrap$(java.lang.Class)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:143,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:144,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$lambda_tryAccessDefineClass_0__212].bootstrap$(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:144,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:147,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:147,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].accessDefineClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].buildDefineClassAccess(java.lang.Class)"
    - "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[com.google.inject.internal.aop.GeneratedClassDefiner].<init>(java.util.function.BiFunction)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:155,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].buildDefineClassAccess(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:156,1"
      Dst: "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:159,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:159,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:159,1"
      Dst: "[com.google.inject.internal.aop.GeneratedClassDefiner].<init>(java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.GeneratedClassDefiner].<init>(java.util.function.BiFunction)"
    functionSourceFile: "com.google.inject.internal.aop.GeneratedClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.GeneratedClassDefiner:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].buildDefineClassAccess(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].<init>(int)"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].replace(char,char)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitEnd()"
    - "[org.objectweb.asm.ClassWriter].toByteArray()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:164,1"
      Dst: "[org.objectweb.asm.ClassWriter].<init>(int)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:170,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:170,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:170,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:167,1"
      Dst: "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:177,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:178,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:179,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:180,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:181,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:182,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:183,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:196,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:216,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitEnd()"
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:218,1"
      Dst: "[org.objectweb.asm.ClassWriter].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner].lambda$tryAccessDefineClass$0(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].accessDefineClass(java.lang.Class)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner:145,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].accessDefineClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].visit(com.google.inject.spi.StaticInjectionRequest)"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.StaticInjectionRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].<init>(com.google.inject.internal.InjectionRequestProcessor,com.google.inject.internal.InjectorImpl,com.google.inject.spi.StaticInjectionRequest)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putStaticInjectionRequest(com.google.inject.spi.StaticInjectionRequest)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:48,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].<init>(com.google.inject.internal.InjectionRequestProcessor,com.google.inject.internal.InjectorImpl,com.google.inject.spi.StaticInjectionRequest)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:48,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:49,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:49,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putStaticInjectionRequest(com.google.inject.spi.StaticInjectionRequest)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:50,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor$StaticInjection].<init>(com.google.inject.internal.InjectionRequestProcessor,com.google.inject.internal.InjectorImpl,com.google.inject.spi.StaticInjectionRequest)"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectionRequestProcessor"
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.spi.StaticInjectionRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:114,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor$StaticInjection:116,1"
      Dst: "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].visit(com.google.inject.spi.InjectionRequest<?>)"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionRequest<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionRequest].getInjectionPoints()"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.internal.InjectionRequestProcessor].requestInjection(com.google.inject.spi.InjectionRequest,java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].putInjectionRequest(com.google.inject.spi.InjectionRequest)"
    - "[com.google.inject.spi.InjectionRequest].<init>(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].getSource()"
    - "[com.google.inject.spi.InjectionRequest].getType()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:57,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getInjectionPoints()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:59,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:59,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:60,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:63,1"
      Dst: "[com.google.inject.internal.InjectionRequestProcessor].requestInjection(com.google.inject.spi.InjectionRequest,java.util.Set,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:68,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:70,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getSource()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:70,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getType()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:70,1"
      Dst: "[com.google.inject.spi.InjectionRequest].<init>(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:69,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putInjectionRequest(com.google.inject.spi.InjectionRequest)"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:71,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].getInjectionPoints()"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:80,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.ConfigurationException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].getSource()"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].getType()"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].<init>(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InjectionRequest:45,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectionRequestProcessor].requestInjection(com.google.inject.spi.InjectionRequest<T>,java.util.Set<InjectionPoint>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InjectionRequestProcessor"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.InjectionRequest<T>"
    - "java.util.Set<InjectionPoint>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.InjectionRequest].getType()"
    - "[com.google.inject.spi.InjectionRequest].getInstance()"
    - "[com.google.inject.spi.InjectionRequest].getSource()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectionRequestProcessor:82,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getType()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:83,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getInstance()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:85,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getSource()"
    - Src: "com.google.inject.internal.InjectionRequestProcessor:80,1"
      Dst: "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].getInstance()"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.Initializer"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 126
    functionDepth: 3
    returnType: "com.google.inject.internal.Initializable"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.TypeLiteral"
    - "java.lang.Object"
    - "com.google.inject.Binding"
    - "java.lang.Object"
    - "java.util.Set"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArraySet].isEmpty()"
    - "[com.google.inject.internal.MembersInjectorStore].hasTypeListeners()"
    - "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.inject.internal.Errors].requestInjectionWithDifferentTypes(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Initializer$InjectableReference].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,com.google.inject.internal.CycleDetectingLock)"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].create(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.IdentityHashMap:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.Set].isEmpty()"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 61
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Initializer:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:84"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "get(com.google.inject.Binding)"
      - BranchSide: "com.google.inject.internal.Initializer:83"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "checkNotNull(java.lang.Object)"
    - Branch String: "com.google.inject.internal.Initializer:88"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:85"
        BranchSideFuncs:
        - "get(com.google.inject.Binding)"
      - BranchSide: "com.google.inject.internal.Initializer:84"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "get(com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.Initializer:91"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:95"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.Initializer:94"
        BranchSideFuncs:
        - "of(java.lang.Object)"
    - Branch String: "com.google.inject.internal.Initializer:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:98"
        BranchSideFuncs:
        - "hasTypeListeners()"
      - BranchSide: "com.google.inject.internal.Initializer:97"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Initializer:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:97"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Initializer:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:97"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Initializer:98"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:103"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
    - Branch String: "com.google.inject.internal.Initializer:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:113"
        BranchSideFuncs:
        - "getKey()"
    - Branch String: "com.google.inject.internal.Initializer:107"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:110"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Initializer:119"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Initializer:113"
        BranchSideFuncs:
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.Initializer:84,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:85,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:88,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Initializer:92,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "com.google.inject.internal.Initializer:93,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].hasTypeListeners()"
    - Src: "com.google.inject.internal.Initializer:95,1"
      Dst: "[com.google.inject.internal.Initializables].of(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:100,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.Initializer:101,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.Initializer:104,1"
      Dst: "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:106,1"
      Dst: "[java.util.IdentityHashMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:107,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:109,1"
      Dst: "[com.google.inject.internal.Errors].requestInjectionWithDifferentTypes(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.Initializer:119,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.Initializer:122,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].create(java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:122,1"
      Dst: "[com.google.inject.internal.Initializer$InjectableReference].<init>(com.google.inject.internal.InjectorImpl,java.lang.Object,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,com.google.inject.internal.CycleDetectingLock)"
    - Src: "com.google.inject.internal.Initializer:123,1"
      Dst: "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Initializer:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[com.google.inject.internal.MembersInjectorStore].hasTypeListeners()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorStore:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:62"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:63,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].create(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "com.google.inject.internal.CycleDetectingLock"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].<init>(com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory,java.lang.Object,java.util.concurrent.locks.Lock)"
    - "[java.util.concurrent.locks.ReentrantLock].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory:111,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - Src: "com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory:111,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].<init>(com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory,java.lang.Object,java.util.concurrent.locks.Lock)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$DefineClassCacheHolder:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingletonScope$1].<init>(com.google.inject.internal.SingletonScope,com.google.inject.Key,com.google.inject.Provider)"
    functionSourceFile: "com.google.inject.internal.SingletonScope$1"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 144
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.SingletonScope"
    - "com.google.inject.Key"
    - "com.google.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.ConstructionContext].<init>()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].create(java.lang.Object)"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].getInjector()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingletonScope$1:138"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:141"
        BranchSideFuncs:
        - "getInjector()"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope$1:100,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.SingletonScope$1:115,1"
      Dst: "[com.google.inject.internal.ConstructionContext].<init>()"
    - Src: "com.google.inject.internal.SingletonScope$1:128,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory].create(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:139,1"
      Dst: "[com.google.inject.internal.ProviderToInternalFactoryAdapter].getInjector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SingletonScope$1].get()"
    functionSourceFile: "com.google.inject.internal.SingletonScope$1"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 254
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getLocalContext()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - "[com.google.common.collect.ImmutableMultimap].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].isEmpty()"
    - "[com.google.common.collect.Multimaps$TransformedEntriesMultimap].isEmpty()"
    - "[com.google.common.collect.ForwardingMultimap].isEmpty()"
    - "[com.google.common.collect.AbstractMultimap].isEmpty()"
    - "[com.google.common.collect.ArrayListMultimap].isEmpty()"
    - "[com.google.common.collect.LinkedListMultimap].isEmpty()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    - "[com.google.inject.internal.InjectorImpl$1].get()"
    - "[com.google.inject.spi.ProviderLookup$1].get()"
    - "[com.google.inject.internal.SingletonScope$1].get()"
    - "[com.google.inject.util.Providers$ConstantProvider].get()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get()"
    - "[com.google.inject.Scopes].isCircularProxy(java.lang.Object)"
    - "[com.google.inject.internal.ConstructionContext].setProxyDelegates(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].unlock()"
    - "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.SingletonScope$1].createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InternalContext].getDependency()"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.ConstructionContext].createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
    - "[com.google.inject.internal.InternalContext].getInjectorOptions()"
    - "[com.google.inject.internal.InternalProvisionException].getErrors()"
    - "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.CycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - "[com.google.common.collect.Multimap].isEmpty()"
    - "[com.google.inject.Provider].get()"
    - "[com.google.inject.internal.CycleDetectingLock].unlock()"
    functionUses: 7
    ICount: 117
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingletonScope$1:150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:252"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:157"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:156"
        BranchSideFuncs:
        - "getLocalContext()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:206"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:205"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:166"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:203"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:202"
        BranchSideFuncs:
        - "unlock()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:170"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:169"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:168"
        BranchSideFuncs:
        - "get()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:173"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:189"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:188"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:178"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:182"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:181"
        BranchSideFuncs:
        - "setProxyDelegates(java.lang.Object)"
    - Branch String: "com.google.inject.internal.SingletonScope$1:189"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:189"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:188"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:206"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:211"
        BranchSideFuncs:
        - "of(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:210"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:213"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:235"
        BranchSideFuncs:
        - "isEmpty()"
        - "unlock()"
        - "getTypeLiteral()"
        - "get()"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "of(java.lang.Object,java.lang.Object)"
        - "isCircularProxy(java.lang.Object)"
        - "getErrors()"
        - "finishConstruction()"
        - "createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
        - "getInjectorOptions()"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
        - "of(java.lang.Object)"
        - "setProxyDelegates(java.lang.Object)"
        - "getDependency()"
        - "getKey()"
        - "getOnlyElement(java.lang.Iterable)"
        - "getRawType()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:234"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SingletonScope$1:243"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:242"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:241"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.SingletonScope$1:248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:242"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    - Branch String: "com.google.inject.internal.SingletonScope$1:253"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope$1:157,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getLocalContext()"
    - Src: "com.google.inject.internal.SingletonScope$1:160,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock].lockOrDetectPotentialLocksCycle()"
    - Src: "com.google.inject.internal.SingletonScope$1:162,1"
      Dst: "[com.google.common.collect.Multimap].isEmpty()"
    - Src: "com.google.inject.internal.SingletonScope$1:169,1"
      Dst: "[com.google.inject.Provider].get()"
    - Src: "com.google.inject.internal.SingletonScope$1:178,1"
      Dst: "[com.google.inject.Scopes].isCircularProxy(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:203,1"
      Dst: "[com.google.inject.internal.CycleDetectingLock].unlock()"
    - Src: "com.google.inject.internal.SingletonScope$1:185,1"
      Dst: "[com.google.inject.internal.ConstructionContext].setProxyDelegates(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:189,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:198,1"
      Dst: "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    - Src: "com.google.inject.internal.SingletonScope$1:208,1"
      Dst: "[com.google.inject.internal.SingletonScope$1].createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
    - Src: "com.google.inject.internal.SingletonScope$1:208,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:208,1"
      Dst: "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    - Src: "com.google.inject.internal.SingletonScope$1:217,1"
      Dst: "[com.google.inject.internal.InternalContext].getDependency()"
    - Src: "com.google.inject.internal.SingletonScope$1:216,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:218,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.SingletonScope$1:218,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.SingletonScope$1:218,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.SingletonScope$1:223,1"
      Dst: "[com.google.inject.internal.InternalContext].getInjectorOptions()"
    - Src: "com.google.inject.internal.SingletonScope$1:223,1"
      Dst: "[com.google.inject.internal.ConstructionContext].createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
    - Src: "com.google.inject.internal.SingletonScope$1:227,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].getErrors()"
    - Src: "com.google.inject.internal.SingletonScope$1:227,1"
      Dst: "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable)"
    - Src: "com.google.inject.internal.SingletonScope$1:232,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 43
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ConstructionContext].setProxyDelegates(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.DelegatingInvocationHandler].setDelegate(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 14
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructionContext:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructionContext:90"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.ConstructionContext:89"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructionContext:84"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructionContext:88"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "setDelegate(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructionContext:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructionContext:84,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ConstructionContext:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ConstructionContext:84,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ConstructionContext:85,1"
      Dst: "[com.google.inject.internal.DelegatingInvocationHandler].setDelegate(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingletonScope$1].createCycleDependenciesMessage(com.google.common.collect.ListMultimap,com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.SingletonScope$1"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 297
    functionDepth: 7
    returnType: "com.google.inject.spi.Message"
    argCount: 2
    argTypes:
    - "com.google.common.collect.ListMultimap"
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.Formatter].<init>(java.lang.Appendable)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.Message].getMessage()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].keySet()"
    - "[com.google.common.collect.ArrayListMultimap].keySet()"
    - "[com.google.common.collect.ImmutableMultimap].keySet()"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap].keySet()"
    - "[com.google.common.collect.ForwardingMultimap].keySet()"
    - "[com.google.common.collect.LinkedListMultimap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.Synchronized$SynchronizedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$TransformedEntriesListMultimap].get(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[java.lang.Thread].getStackTrace()"
    - "[java.util.Formatter].close()"
    - "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.StringBuilder].toString()"
    - "[com.google.common.collect.Multimap].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.common.collect.ListMultimap].get(java.lang.Object)"
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 53
    EdgeCount: 401
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SingletonScope$1:281"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:284"
        BranchSideFuncs:
        - "getMessage()"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:283"
        BranchSideFuncs:
        - "keySet()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:285"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:295"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "keySet()"
        - "get(java.lang.Object)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:294"
        BranchSideFuncs:
        - "currentThread()"
        - "toString()"
        - "<init>(java.lang.Object,java.lang.String)"
        - "close()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:288"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:291"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "convert(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.SingletonScope$1:290"
        BranchSideFuncs:
        - "getStackTrace()"
    - Branch String: "com.google.inject.internal.SingletonScope$1:291"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SingletonScope$1:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope$1:278,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.SingletonScope$1:279,1"
      Dst: "[java.util.Formatter].<init>(java.lang.Appendable)"
    - Src: "com.google.inject.internal.SingletonScope$1:280,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.SingletonScope$1:282,1"
      Dst: "[com.google.inject.spi.Message].getMessage()"
    - Src: "com.google.inject.internal.SingletonScope$1:285,1"
      Dst: "[com.google.common.collect.Multimap].keySet()"
    - Src: "com.google.inject.internal.SingletonScope$1:285,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.SingletonScope$1:285,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.SingletonScope$1:285,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.SingletonScope$1:286,1"
      Dst: "[com.google.common.collect.ListMultimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:288,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.SingletonScope$1:289,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.SingletonScope$1:291,1"
      Dst: "[java.lang.Thread].getStackTrace()"
    - Src: "com.google.inject.internal.SingletonScope$1:295,1"
      Dst: "[java.util.Formatter].close()"
    - Src: "com.google.inject.internal.SingletonScope$1:296,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "com.google.inject.internal.SingletonScope$1:296,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.SingletonScope$1:296,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.InternalContext].getDependency()"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "com.google.inject.spi.Dependency"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalContext].getInjectorOptions()"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl$InjectorOptions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl$InjectorOptions"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].circularDependenciesDisabled(java.lang.Class)"
    - "[java.lang.Class].isInterface()"
    - "[com.google.inject.internal.InternalProvisionException].cannotProxyClass(java.lang.Class)"
    - "[java.util.ArrayList].<init>()"
    - "[com.google.inject.internal.DelegatingInvocationHandler].<init>()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen].newCircularProxy(java.lang.Class,java.lang.reflect.InvocationHandler)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructionContext:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructionContext:65"
        BranchSideFuncs:
        - "circularDependenciesDisabled(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ConstructionContext:64"
        BranchSideFuncs:
        - "isInterface()"
    - Branch String: "com.google.inject.internal.ConstructionContext:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructionContext:69"
        BranchSideFuncs:
        - "cannotProxyClass(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ConstructionContext:68"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructionContext:69"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructionContext:73"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ConstructionContext:72"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>()"
        - "newCircularProxy(java.lang.Class,java.lang.reflect.InvocationHandler)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructionContext:63,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].circularDependenciesDisabled(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructionContext:65,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "com.google.inject.internal.ConstructionContext:66,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].cannotProxyClass(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructionContext:70,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.ConstructionContext:73,1"
      Dst: "[com.google.inject.internal.DelegatingInvocationHandler].<init>()"
    - Src: "com.google.inject.internal.ConstructionContext:74,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructionContext:79,1"
      Dst: "[com.google.inject.internal.BytecodeGen].newCircularProxy(java.lang.Class,java.lang.reflect.InvocationHandler)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SingletonScope$1].toString()"
    functionSourceFile: "com.google.inject.internal.SingletonScope$1"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 20
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope$1:301,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:401,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 407
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:406,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 410
    functionLinenumberEnd: 412
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:411,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 415
    functionLinenumberEnd: 420
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:416,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:417,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:417,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:418,1"
      Dst: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:419,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:424,1"
      Dst: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:424,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:424,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 436
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:429"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:435"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:434"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:431"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:432"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:433"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:431,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:431,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:432,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:432,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:433,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 442
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:441,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:441,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl:441,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$2].<init>()"
    functionSourceFile: "com.google.inject.Scopes$2"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$2:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$2].visitNoScoping()"
    functionSourceFile: "com.google.inject.Scopes$2"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$2:66,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$2].visitScopeAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.inject.Scopes$2"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes$2:71"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes$2:70"
        BranchSideFuncs:
        - "valueOf(boolean)"
    - Branch String: "com.google.inject.Scopes$2:71"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes$2:70"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.Scopes$2:71,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.Scopes$2].visitScope(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.Scopes$2"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes$2:77"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes$2:76"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.Scopes$2:77,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Scopes$2].visitEagerSingleton()"
    functionSourceFile: "com.google.inject.Scopes$2"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$2:82,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:191,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:192,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Class)"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:197,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$SubclassesOf:202"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$SubclassesOf:201"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$SubclassesOf:202"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$SubclassesOf:201"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:202,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:207,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:212,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:212,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$SubclassesOf"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Class)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$SubclassesOf:188,1"
      Dst: "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$lambda_formatText_0__3].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$lambda_formatText_0__3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].lambda$formatText$0(com.google.inject.internal.Messages$FormatOptions)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$lambda_formatText_0__3:-1,1"
      Dst: "[com.google.inject.internal.Messages].lambda$formatText$0(com.google.inject.internal.Messages$FormatOptions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].lambda$formatText$0(com.google.inject.internal.Messages$FormatOptions)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Messages$FormatOptions"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 449
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].requireAtInjectOnConstructors()"
    - "[com.google.inject.Binder].requireAtInjectOnConstructors()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule:447,1"
      Dst: "[com.google.inject.Binder].requireAtInjectOnConstructors()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InjectorFactory"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InjectorFactory].get()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InjectorFactory"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$InjectorFactory].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$InjectorFactory"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$2].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$2"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ClassOwnership].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$2:108,1"
      Dst: "[com.google.common.reflect.Types$ClassOwnership].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$2].getOwnerType(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$2"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isLocalClass()"
    - "[java.lang.Class].getEnclosingClass()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$ClassOwnership$2:112"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ClassOwnership$2:115"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$ClassOwnership$2:114"
        BranchSideFuncs:
        - "getEnclosingClass()"
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$2:112,1"
      Dst: "[java.lang.Class].isLocalClass()"
    - Src: "com.google.common.reflect.Types$ClassOwnership$2:115,1"
      Dst: "[java.lang.Class].getEnclosingClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].<init>(java.lang.Object,com.google.inject.spi.TypeListener,com.google.inject.matcher.Matcher)"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.TypeListener"
    - "com.google.inject.matcher.Matcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeListenerBinding:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].getListener()"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "com.google.inject.spi.TypeListener"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].getTypeMatcher()"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ListenerBindingProcessor].visit(com.google.inject.spi.TypeListenerBinding)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.TypeListenerBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.TypeListenerBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeListenerBinding:64,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.TypeListenerBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeListenerBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.TypeListenerBinding"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeListener)"
    - "[com.google.inject.spi.TypeListenerBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeListener)"
    functionUses: 4
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeListenerBinding:69,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].getSource()"
    - Src: "com.google.inject.spi.TypeListenerBinding:69,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.TypeListenerBinding:69,1"
      Dst: "[com.google.inject.Binder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$3].<init>()"
    functionSourceFile: "com.google.inject.internal.Scoping$3"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$3:94,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$3].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$3"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$2].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.Scopes$3].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Indexer].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.BindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$3:97,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$3].getScopeAnnotation()"
    functionSourceFile: "com.google.inject.internal.Scoping$3"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$3].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$3"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$3:107,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$3"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].in(java.lang.Class)"
    - "[com.google.inject.binder.ScopedBindingBuilder].in(java.lang.Class)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$3:112,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].in(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].<init>()"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getElements(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements:96,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.spi.Elements:96,1"
      Dst: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "com.google.inject.Stage"
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements:101,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.spi.Elements:101,1"
      Dst: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getElements(java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<Element>"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements:106,1"
      Dst: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getElements(com.google.inject.Stage,java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 123
    functionDepth: 14
    returnType: "java.util.List<Element>"
    argCount: 2
    argTypes:
    - "com.google.inject.Stage"
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.Stage)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.spi.Elements$RecordingBinder].scanForAnnotatedMethods()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.ImmutableSet$CachingAsList:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.nio.file.Path:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.ServiceLoader:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.SynchronousQueue].hasNext()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].finish()"
    - "[com.google.inject.internal.util.StackTraceElements].clearCache()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].iterator()"
    functionUses: 3
    ICount: 26
    EdgeCount: 390
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements:112"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements:115"
        BranchSideFuncs:
        - "install(com.google.inject.Module)"
      - BranchSide: "com.google.inject.spi.Elements:114"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "com.google.inject.spi.Elements:116"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements:119"
        BranchSideFuncs:
        - "scanForAnnotatedMethods()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.spi.Elements:118"
        BranchSideFuncs:
        - "clearCache()"
        - "unmodifiableList(java.util.List)"
        - "finish()"
    Callsites:
    - Src: "com.google.inject.spi.Elements:111,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.Stage)"
    - Src: "com.google.inject.spi.Elements:112,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.spi.Elements:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.Elements:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.Elements:113,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - Src: "com.google.inject.spi.Elements:115,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].scanForAnnotatedMethods()"
    - Src: "com.google.inject.spi.Elements:116,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.spi.Elements:119,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].finish()"
    - Src: "com.google.inject.spi.Elements:121,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].clearCache()"
    - Src: "com.google.inject.spi.Elements:122,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.Stage)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 242
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Stage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.Maps].newLinkedHashMap()"
    - "[com.google.common.collect.Sets].newLinkedHashSet()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].<init>()"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:230,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:232,1"
      Dst: "[com.google.common.collect.Maps].newLinkedHashMap()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:233,1"
      Dst: "[com.google.common.collect.Sets].newLinkedHashSet()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:234,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:240,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 381
    functionLinenumberEnd: 449
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].containsKey(java.lang.Object)"
    - "[java.util.AbstractMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[java.util.jar.Attributes].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[java.util.EnumMap].containsKey(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.WeakHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].isScanningBuiltInProvidesMethods()"
    - "[com.google.inject.internal.ProviderMethodsModule].getScanner()"
    - "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.spi.ModuleSource].getModuleClassName()"
    - "[java.lang.Class].getName()"
    - "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    - "[com.google.inject.spi.Elements$RecordingBinder].forbidNestedScannerMethods(com.google.inject.Module)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.Elements$RecordingBinder].getModuleSource(java.lang.Class)"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].pushModule(java.lang.Class,com.google.inject.spi.ModuleSource)"
    - "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    - "[com.google.inject.spi.Elements$ModuleInfo].<init>(com.google.inject.spi.ModuleSource,boolean)"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.AbstractModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealMapBinder].configure(com.google.inject.Binder)"
    - "[com.google.inject.spi.Elements$ElementsAsModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$CombinedModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorShell$InheritedScannersModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$RequireExactBindingAnnotationsModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$RequireAtInjectOnConstructorsModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.ProviderMethodsModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$DisableCircularProxiesModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorShell$RootModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$RequireExplicitBindingsModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.PrivateModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealMultibinder].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.RealOptionalBinder].configure(com.google.inject.Binder)"
    - "[com.google.inject.util.Modules$EmptyModule].configure(com.google.inject.Binder)"
    - "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$WriteQueue].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Collections2$TransformedCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.RegularContiguousSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$PowerSet].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.EmptyContiguousSet].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArraySet].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.collect.Collections2$PermutationCollection].isEmpty()"
    - "[com.google.common.cache.LocalCache$Values].isEmpty()"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[java.util.concurrent.SynchronousQueue].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Maps$Values].isEmpty()"
    - "[com.google.common.cache.LocalCache$AccessQueue].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ForwardingCollection].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ImmutableCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    - "[com.google.inject.internal.ProviderMethodsModule].forModule(com.google.inject.Module)"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.spi.ModuleSource].getParent()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].popModule()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Module].configure(com.google.inject.Binder)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 7
    ICount: 74
    EdgeCount: 212
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:382"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:386"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:385"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:390"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:406"
        BranchSideFuncs:
        - "isScanningBuiltInProvidesMethods()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:405"
        BranchSideFuncs:
        - "moduleScanning()"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:392"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:400"
        BranchSideFuncs:
        - "getScanner()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:399"
        BranchSideFuncs:
        - "getDelegateModuleClass()"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:401"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:403"
        BranchSideFuncs:
        - "getModuleClassName()"
        - "getName()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:402"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:402"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:405"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:404"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:406"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:409"
        BranchSideFuncs:
        - "forbidNestedScannerMethods(com.google.inject.Module)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:408"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:411"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:415"
        BranchSideFuncs:
        - "pushModule(java.lang.Class,com.google.inject.spi.ModuleSource)"
        - "getModuleSource(java.lang.Class)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:414"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:416"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:424"
        BranchSideFuncs:
        - "newPrivateBinder()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:423"
        BranchSideFuncs:
        - "isEmpty()"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "<init>(com.google.inject.spi.ModuleSource,boolean)"
        - "addAll(java.util.Collection)"
        - "put(java.lang.Object,java.lang.Object)"
        - "configure(com.google.inject.Binder)"
        - "addError(java.lang.Throwable)"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:429"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:424"
        BranchSideFuncs:
        - "isEmpty()"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "<init>(com.google.inject.spi.ModuleSource,boolean)"
        - "addAll(java.util.Collection)"
        - "put(java.lang.Object,java.lang.Object)"
        - "configure(com.google.inject.Binder)"
        - "addError(java.lang.Throwable)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:423"
        BranchSideFuncs:
        - "isEmpty()"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "<init>(com.google.inject.spi.ModuleSource,boolean)"
        - "addAll(java.util.Collection)"
        - "put(java.lang.Object,java.lang.Object)"
        - "configure(com.google.inject.Binder)"
        - "addError(java.lang.Throwable)"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:437"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:445"
        BranchSideFuncs:
        - "getParent()"
        - "popModule()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:444"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:445"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:448"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:447"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:382,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:392,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].isScanningBuiltInProvidesMethods()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:393,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getScanner()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:400,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:402,1"
      Dst: "[com.google.inject.spi.ModuleSource].getModuleClassName()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:402,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:402,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:406,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:407,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].forbidNestedScannerMethods(com.google.inject.Module)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:409,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:412,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getModuleSource(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:413,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].pushModule(java.lang.Class,com.google.inject.spi.ModuleSource)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:417,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:419,1"
      Dst: "[com.google.inject.spi.Elements$ModuleInfo].<init>(com.google.inject.spi.ModuleSource,boolean)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:419,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:426,1"
      Dst: "[com.google.inject.Module].configure(com.google.inject.Binder)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:428,1"
      Dst: "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:429,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:430,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:432,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:435,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forModule(com.google.inject.Module)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:435,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:438,1"
      Dst: "[com.google.inject.spi.ModuleSource].getParent()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:439,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].popModule()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 11
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].isScanningBuiltInProvidesMethods()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:355"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:354"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].getScanner()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionDepth: 0
    returnType: "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:97"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:96"
        BranchSideFuncs:
        - "isStaticModule()"
        - "getClass()"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:97,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:97,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].getModuleClassName()"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 692
    functionLinenumberEnd: 694
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:693"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:692"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].forbidNestedScannerMethods(com.google.inject.Module)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 462
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.ProviderMethodsModule].forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - "[com.google.inject.internal.ProviderMethodsModule].getProviderMethods(com.google.inject.Binder)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[com.google.inject.internal.ProviderMethod].getAnnotation()"
    - "[java.lang.Class].getCanonicalName()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].iterator()"
    - "[java.lang.annotation.Annotation].annotationType()"
    functionUses: 1
    ICount: 27
    EdgeCount: 458
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:451"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:461"
        BranchSideFuncs:
        - "getAllScanners()"
        - "hasNext()"
        - "iterator()"
        - "forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
        - "next()"
        - "getProviderMethods(com.google.inject.Binder)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:460"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:454"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:460"
        BranchSideFuncs:
        - "getCanonicalName()"
        - "addError(java.lang.String,java.lang.Object[])"
        - "getAnnotation()"
        - "hasNext()"
        - "iterator()"
        - "annotationType()"
        - "next()"
        - "getProviderMethods(com.google.inject.Binder)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:451,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:451,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:451,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:451,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:453,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:454,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getProviderMethods(com.google.inject.Binder)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:454,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:458,1"
      Dst: "[com.google.inject.internal.ProviderMethod].getAnnotation()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:458,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:458,1"
      Dst: "[java.lang.Class].getCanonicalName()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:455,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 475
    functionDepth: 1
    returnType: "java.lang.Iterable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterables].concat(java.lang.Iterable,java.lang.Iterable)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:470"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:474"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:473"
        BranchSideFuncs:
        - "concat(java.lang.Iterable,java.lang.Iterable)"
        - "getAllScanners()"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:474,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:474,1"
      Dst: "[com.google.common.collect.Iterables].concat(java.lang.Iterable,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 4
    returnType: "com.google.inject.Module"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:72,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 3
    returnType: "com.google.inject.Module"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].<init>(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:93"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:92"
        BranchSideFuncs:
        - "<init>(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:93,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].<init>(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].<init>(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:59,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:60,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:60,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].getProviderMethods(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 202
    functionDepth: 10
    returnType: "java.util.List<ProviderMethod<?>>"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    - "[java.lang.Class].getSuperclass()"
    - "[com.google.inject.internal.DeclaredMembers].getDeclaredMethods(java.lang.Class)"
    - "[com.google.inject.internal.ProviderMethodsModule].getAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    - "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].<init>()"
    - "[com.google.inject.internal.ProviderMethodsModule].createProviderMethod(com.google.inject.Binder,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$MethodAndAnnotation].<init>(java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - "[com.google.common.collect.ImmutableList].of()"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.reflect.Method].isBridge()"
    - "[java.lang.reflect.Method].isSynthetic()"
    - "[com.google.common.collect.HashMultimap].create()"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method)"
    - "[com.google.common.collect.HashMultimap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.HashMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.inject.internal.ProviderMethodsModule].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].annotationType()"
    - "[com.google.inject.internal.UniqueAnnotations$1].annotationType()"
    - "[com.google.inject.internal.RealElement].annotationType()"
    - "[com.google.inject.name.NamedImpl].annotationType()"
    - "[java.lang.Class].getCanonicalName()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.lang.annotation.Annotation].annotationType()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 114
    EdgeCount: 450
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:116"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:143"
        BranchSideFuncs:
        - "getDeclaredMethods(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:142"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:116"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:143"
        BranchSideFuncs:
        - "getDeclaredMethods(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:142"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:117"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:112"
        BranchSideFuncs:
        - "getDeclaredMethods(java.lang.Class)"
        - "getAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:111"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:119"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:117"
        BranchSideFuncs:
        - "isStaticModule()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:116"
        BranchSideFuncs:
        - "getDeclaredMethods(java.lang.Class)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:120"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:129"
        BranchSideFuncs:
        - "isStatic(int)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:128"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:121"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:129"
        BranchSideFuncs:
        - "isAbstract(int)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:128"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:122"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:129"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:128"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:134"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:133"
        BranchSideFuncs:
        - "createProviderMethod(com.google.inject.Binder,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:135"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:138"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:137"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
        - "add(java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:143"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:149"
        BranchSideFuncs:
        - "getDelegateModuleClass()"
        - "getSuperclass()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:154"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:166"
        BranchSideFuncs:
        - "getDeclaredMethods()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:165"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:155"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:150"
        BranchSideFuncs:
        - "getModifiers()"
        - "getDeclaredMethods()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:149"
        BranchSideFuncs:
        - "getDelegateModuleClass()"
        - "getSuperclass()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:156"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:155"
        BranchSideFuncs:
        - "isBridge()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:154"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:157"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:155"
        BranchSideFuncs:
        - "isSynthetic()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:154"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:155"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:154"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:159"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:162"
        BranchSideFuncs:
        - "create()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:161"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:166"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:200"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:170"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:201"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method)"
        - "next()"
        - "get(java.lang.Object)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:200"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:175"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:199"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method)"
        - "next()"
        - "get(java.lang.Object)"
        - "getDeclaringClass()"
        - "isAssignableFrom(java.lang.Class)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:198"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:178"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:182"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:181"
        BranchSideFuncs:
        - "overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:182"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:197"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:184"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:186"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:185"
        BranchSideFuncs:
        - "getCanonicalName()"
        - "annotationType()"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:115,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getDelegateModuleClass()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:117,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].getDeclaredMethods(java.lang.Class)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:118,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:120,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:121,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:121,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:122,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:123,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ProviderMethodsModule:130,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:134,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].createProviderMethod(com.google.inject.Binder,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:138,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule$MethodAndAnnotation].<init>(java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:116,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:145,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:155,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:157,1"
      Dst: "[java.lang.reflect.Method].isBridge()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:158,1"
      Dst: "[java.lang.reflect.Method].isSynthetic()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:160,1"
      Dst: "[com.google.common.collect.HashMultimap].create()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:162,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule$Signature].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:162,1"
      Dst: "[com.google.common.collect.Multimap].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:170,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:170,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:175,1"
      Dst: "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:175,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:178,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:178,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:182,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:184,1"
      Dst: "[java.lang.annotation.Annotation].annotationType()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:186,1"
      Dst: "[java.lang.Class].getCanonicalName()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:186,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:187,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 46
    CyclomaticComplexity: 22
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].getAnnotation(com.google.inject.Binder,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].isBridge()"
    - "[java.lang.reflect.Method].isSynthetic()"
    - "[com.google.inject.multibindings.MultibindingsScanner$1].annotationClasses()"
    - "[com.google.inject.internal.ProvidesMethodScanner].annotationClasses()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScanner].annotationClasses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 28
    EdgeCount: 229
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:217"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:216"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:216"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:219"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:218"
        BranchSideFuncs:
        - "annotationClasses()"
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:220"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:233"
        BranchSideFuncs:
        - "annotationClasses()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getAnnotation(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:232"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:222"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:232"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:231"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:223"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:230"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:216,1"
      Dst: "[java.lang.reflect.Method].isBridge()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:216,1"
      Dst: "[java.lang.reflect.Method].isSynthetic()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:220,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScanner].annotationClasses()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:220,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:220,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:220,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:221,1"
      Dst: "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:224,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].createProviderMethod(com.google.inject.Binder,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 331
    functionDepth: 8
    returnType: "com.google.inject.internal.ProviderMethod<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.reflect.Method"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].forMethod(java.lang.reflect.Method,com.google.inject.TypeLiteral)"
    - "[com.google.inject.TypeLiteral].getReturnType(java.lang.reflect.Method)"
    - "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - "[com.google.inject.internal.ProviderMethodsModule].getKey(com.google.inject.internal.Errors,com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScanner].prepareMethod(com.google.inject.Binder,java.lang.'annotation'.Annotation,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.ProviderMethod].create(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,boolean,java.lang.'annotation'.Annotation)"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].addError(java.lang.Throwable)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    functionUses: 1
    ICount: 63
    EdgeCount: 169
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:299"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:288"
        BranchSideFuncs:
        - "prepareMethod(com.google.inject.Binder,java.lang.'annotation'.Annotation,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object)"
        - "addError(java.lang.Throwable)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:287"
        BranchSideFuncs:
        - "forMethod(java.lang.reflect.Method,com.google.inject.TypeLiteral)"
        - "prepareMethod(com.google.inject.Binder,java.lang.'annotation'.Annotation,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object)"
        - "withSource(java.lang.Object)"
        - "getKey(com.google.inject.internal.Errors,com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
        - "getReturnType(java.lang.reflect.Method)"
        - "<init>(java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:305"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:316"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:315"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:306"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:306"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:305"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:306"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:306"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:305"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:316"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:321"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:320"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getAnnotations()"
        - "iterator()"
        - "findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
        - "getMessages()"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:322"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:326"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "addError(com.google.inject.spi.Message)"
        - "iterator()"
        - "getMessages()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:325"
        BranchSideFuncs:
        - "create(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,boolean,java.lang.'annotation'.Annotation)"
        - "isStaticModule()"
        - "getModifiers()"
        - "isStatic(int)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:329"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:330"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:329"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:329"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:330"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:329"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:288,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:289,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:292,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forMethod(java.lang.reflect.Method,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:294,1"
      Dst: "[com.google.inject.TypeLiteral].getReturnType(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:295,1"
      Dst: "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:295,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getKey(com.google.inject.internal.Errors,com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.internal.ProviderMethodsModule:299,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].isStaticModule()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:299,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScanner].prepareMethod(com.google.inject.Binder,java.lang.'annotation'.Annotation,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:302,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.Throwable)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:305,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:305,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:306,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:321,1"
      Dst: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.internal.ProviderMethodsModule:322,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:322,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:322,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:322,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:323,1"
      Dst: "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:329,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:330,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:330,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:326,1"
      Dst: "[com.google.inject.internal.ProviderMethod].create(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,boolean,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule$MethodAndAnnotation].<init>(java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule$MethodAndAnnotation"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule$MethodAndAnnotation:208,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule$Signature].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule$Signature"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 256
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.reflect.Method].getName()"
    - "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.lang.String].hashCode()"
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 27
    EdgeCount: 200
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule$Signature:251"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:254"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:253"
        BranchSideFuncs:
        - "hashCode(java.lang.Object[])"
        - "hashCode()"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:241,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:242,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:248,1"
      Dst: "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:249,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:251,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:251,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:252,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:254,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:254,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 290
    functionDepth: 8
    returnType: "java.util.List<TypeLiteral<?>>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Method].getGenericParameterTypes()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getGenericParameterTypes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[com.google.inject.TypeLiteral].resolveAll(java.lang.reflect.Type[])"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Member)"
    functionUses: 3
    ICount: 28
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:267"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:267"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:266"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:267"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:286"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:285"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.TypeLiteral:270,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:270,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:269,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:274,1"
      Dst: "[java.lang.reflect.Method].getGenericParameterTypes()"
    - Src: "com.google.inject.TypeLiteral:279,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:283,1"
      Dst: "[java.lang.reflect.Constructor].getGenericParameterTypes()"
    - Src: "com.google.inject.TypeLiteral:286,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Member)"
    - Src: "com.google.inject.TypeLiteral:286,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "com.google.inject.TypeLiteral:289,1"
      Dst: "[com.google.inject.TypeLiteral].resolveAll(java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.TypeLiteral].resolveAll(java.lang.reflect.Type[])"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionDepth: 7
    returnType: "java.util.List<TypeLiteral<?>>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:156"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:158"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.TypeLiteral:157,1"
      Dst: "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:159,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isProtected(int)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getPackage()"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:276"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:277"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:276"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:276"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:279"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:278"
        BranchSideFuncs:
        - "isPrivate(int)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:279"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:283"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:282"
        BranchSideFuncs:
        - "getPackage()"
        - "getDeclaringClass()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:275,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:276,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:276,1"
      Dst: "[java.lang.reflect.Modifier].isProtected(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:279,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:283,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:283,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:283,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 486
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 18
    ICount: 10
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:484,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:484,1"
      Dst: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:484,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:484,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 688
    functionDepth: 3
    returnType: "com.google.inject.spi.ElementSource"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - "[com.google.inject.internal.InternalFlags].getIncludeStackTraceOption()"
    - "[com.google.inject.internal.util.SourceProvider].getCaller()"
    - "[java.lang.StackTraceElement].getClassName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].getMethodName()"
    - "[com.google.inject.internal.util.SourceProvider].getFromClassNames(java.util.List)"
    - "[com.google.inject.spi.ModuleSource].getModuleClassNames()"
    - "[com.google.inject.spi.ElementSource].<init>(com.google.inject.spi.ElementSource,boolean,java.lang.Object,com.google.inject.spi.ModuleSource,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 19
    ICount: 33
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:663"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:667"
        BranchSideFuncs:
        - "getDeclaringSource()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:666"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:667"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:687"
        BranchSideFuncs:
        - "getIncludeStackTraceOption()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:686"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.ElementSource,boolean,java.lang.Object,com.google.inject.spi.ModuleSource,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:669"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:683"
        BranchSideFuncs:
        - "getCaller()"
        - "getClassName()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:682"
        BranchSideFuncs:
        - "getFromClassNames(java.util.List)"
        - "getModuleClassNames()"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:675"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:679"
        BranchSideFuncs:
        - "getMethodName()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:678"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:676"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:679"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:678"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:665,1"
      Dst: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:668,1"
      Dst: "[com.google.inject.internal.InternalFlags].getIncludeStackTraceOption()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:670,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].getCaller()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:674,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:675,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:676,1"
      Dst: "[java.lang.StackTraceElement].getMethodName()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:683,1"
      Dst: "[com.google.inject.spi.ModuleSource].getModuleClassNames()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:683,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].getFromClassNames(java.util.List)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:687,1"
      Dst: "[com.google.inject.spi.ElementSource].<init>(com.google.inject.spi.ElementSource,boolean,java.lang.Object,com.google.inject.spi.ModuleSource,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.util.SourceProvider].getCaller()"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 2
    returnType: "java.lang.StackTraceElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].bootstrap$(com.google.inject.internal.util.SourceProvider)"
    - "[com.google.inject.internal.util.NewThrowableFinder].findCaller(java.util.function.Predicate)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder].findCaller(java.util.function.Predicate)"
    - "[com.google.inject.internal.util.CallerFinder].findCaller(java.util.function.Predicate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:84,1"
      Dst: "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].bootstrap$(com.google.inject.internal.util.SourceProvider)"
    - Src: "com.google.inject.internal.util.SourceProvider:84,1"
      Dst: "[com.google.inject.internal.util.CallerFinder].findCaller(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].bootstrap$(com.google.inject.internal.util.SourceProvider)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.SourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].<init>(com.google.inject.internal.util.SourceProvider)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115:-1,1"
      Dst: "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].<init>(com.google.inject.internal.util.SourceProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].<init>(com.google.inject.internal.util.SourceProvider)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.SourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getModuleSource(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 656
    functionDepth: 2
    returnType: "com.google.inject.spi.ModuleSource"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].<init>(java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].getPermitMap()"
    - "[com.google.inject.spi.ModuleSource].createChild(java.lang.Class)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:652"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:655"
        BranchSideFuncs:
        - "<init>(java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
        - "getPermitMap()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:654"
        BranchSideFuncs:
        - "createChild(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:653,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].getPermitMap()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:653,1"
      Dst: "[com.google.inject.spi.ModuleSource].<init>(java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:655,1"
      Dst: "[com.google.inject.spi.ModuleSource].createChild(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].<init>(java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "com.google.inject.spi.BindingSourceRestriction$PermitMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].<init>(com.google.inject.spi.ModuleSource,java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleSource:53,1"
      Dst: "[com.google.inject.spi.ModuleSource].<init>(com.google.inject.spi.ModuleSource,java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].<init>(com.google.inject.spi.ModuleSource,java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.ModuleSource"
    - "java.lang.Class"
    - "com.google.inject.spi.BindingSourceRestriction$PermitMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleSource:68,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ModuleSource:69,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.ModuleSource:71,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 571
    functionLinenumberEnd: 580
    functionDepth: 4
    returnType: "com.google.inject.PrivateBinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PrivateElementsImpl].<init>(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,com.google.inject.internal.PrivateElementsImpl)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:576"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:579"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:578"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:572,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:572,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:573,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,com.google.inject.internal.PrivateElementsImpl)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:574,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:576,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,com.google.inject.internal.PrivateElementsImpl)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 283
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Elements$RecordingBinder"
    - "com.google.inject.internal.PrivateElementsImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.Maps].newLinkedHashMap()"
    - "[com.google.common.collect.Sets].newLinkedHashSet()"
    - "[com.google.inject.internal.PrivateElementsImpl].getElementsMutable()"
    functionUses: 1
    ICount: 33
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:268,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:270,1"
      Dst: "[com.google.common.collect.Maps].newLinkedHashMap()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:271,1"
      Dst: "[com.google.common.collect.Sets].newLinkedHashSet()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:273,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].getElementsMutable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 488
    functionLinenumberEnd: 492
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[com.google.inject.CreationException].getMessage()"
    - "[com.google.inject.ProvisionException].getMessage()"
    - "[org.aopalliance.aop.AspectException].getMessage()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$PotentialDeadlockException].getMessage()"
    - "[com.google.inject.ConfigurationException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:489,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:489,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:490,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:490,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:490,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.util.List,java.lang.String,java.lang.Throwable)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:490,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].forModule(com.google.inject.Module)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 4
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "com.google.inject.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:67,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].getParent()"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "com.google.inject.spi.ModuleSource"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].scanForAnnotatedMethods()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 378
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.Maps].newLinkedHashMap(java.util.Map)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
    - "[com.google.inject.internal.ProviderMethodsModule].forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$WriteQueue].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Collections2$TransformedCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.RegularContiguousSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$PowerSet].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.EmptyContiguousSet].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArraySet].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.collect.Collections2$PermutationCollection].isEmpty()"
    - "[com.google.common.cache.LocalCache$Values].isEmpty()"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[java.util.concurrent.SynchronousQueue].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Maps$Values].isEmpty()"
    - "[com.google.common.cache.LocalCache$AccessQueue].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ForwardingCollection].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[com.google.common.collect.ImmutableCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 2
    ICount: 45
    EdgeCount: 667
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:354"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:376"
        BranchSideFuncs:
        - "newLinkedHashMap(java.util.Map)"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:375"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:357"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:360"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:359"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:360"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:375"
        BranchSideFuncs:
        - "hasNext()"
        - "isEmpty()"
        - "install(com.google.inject.Module)"
        - "getValue()"
        - "forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "next()"
        - "restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
        - "addAll(java.util.Collection)"
        - "iterator()"
        - "addError(java.lang.Throwable)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:374"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:368"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:360"
        BranchSideFuncs:
        - "hasNext()"
        - "isEmpty()"
        - "install(com.google.inject.Module)"
        - "getValue()"
        - "forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "next()"
        - "restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
        - "addAll(java.util.Collection)"
        - "iterator()"
        - "addError(java.lang.Throwable)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:359"
        BranchSideFuncs:
        - "hasNext()"
        - "isEmpty()"
        - "install(com.google.inject.Module)"
        - "getValue()"
        - "forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
        - "getMessagesFromThrowable(java.lang.Throwable)"
        - "next()"
        - "restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
        - "addAll(java.util.Collection)"
        - "iterator()"
        - "addError(java.lang.Throwable)"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:351,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getAllScanners()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:354,1"
      Dst: "[com.google.common.collect.Maps].newLinkedHashMap(java.util.Map)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:354,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:354,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:354,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:354,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:355,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:356,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:360,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:363,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].restoreCurrentModulePermits(com.google.inject.spi.ModuleSource)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:365,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forModule(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:365,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:367,1"
      Dst: "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:368,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:369,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:371,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.util.StackTraceElements].clearCache()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ForwardingMap].clear()"
    - "[com.google.common.collect.MapMakerInternalMap].clear()"
    - "[com.google.common.cache.LocalCache].clear()"
    - "[java.util.concurrent.ConcurrentHashMap].clear()"
    - "[java.util.Map].clear()"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:85,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getModule(java.lang.Iterable<?\
      \ extends Element>)"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Element>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$ElementsAsModule].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements:163,1"
      Dst: "[com.google.inject.spi.Elements$ElementsAsModule].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$ElementsAsModule].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.spi.Elements$ElementsAsModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$ElementsAsModule:149,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements].getInstanceVisitor()"
    functionSourceFile: "com.google.inject.spi.Elements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.BindingTargetVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.HiddenClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.AnonymousClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.GeneratedClassDefiner].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].define(java.lang.Class,byte[])"
    - "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:44,1"
      Dst: "[com.google.inject.internal.aop.ClassDefiner].define(java.lang.Class,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining].canLoadProxyByName(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].canLoadProxyByName(java.lang.Class)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassDefining:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:53"
        BranchSideFuncs:
        - "canLoadProxyByName(java.lang.Class)"
    - Branch String: "com.google.inject.internal.aop.ClassDefining:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:53"
        BranchSideFuncs:
        - "canLoadProxyByName(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:54,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].canLoadProxyByName(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassDefining].canDowncastToProxy(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].canDowncastToProxy(java.lang.Class)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassDefining:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:58"
        BranchSideFuncs:
        - "canDowncastToProxy(java.lang.Class)"
    - Branch String: "com.google.inject.internal.aop.ClassDefining:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:58"
        BranchSideFuncs:
        - "canDowncastToProxy(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:59,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].canDowncastToProxy(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassDefining].bindClassDefiner()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionDepth: 2
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags].getCustomClassLoadingOption()"
    - "[com.google.inject.internal.aop.ChildClassDefiner].<init>()"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].isAccessible()"
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].<init>()"
    - "[java.util.logging.Logger].warning(java.lang.String)"
    - "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].bootstrap$()"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ClassDefining:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:68"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:67"
        BranchSideFuncs:
        - "isAccessible()"
    - Branch String: "com.google.inject.internal.aop.ClassDefining:68"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:70"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:69"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.ClassDefining:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:73"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "com.google.inject.internal.aop.ClassDefining:72"
        BranchSideFuncs:
        - "bootstrap$()"
        - "warning(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:65,1"
      Dst: "[com.google.inject.internal.InternalFlags].getCustomClassLoadingOption()"
    - Src: "com.google.inject.internal.aop.ClassDefining:67,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner].<init>()"
    - Src: "com.google.inject.internal.aop.ClassDefining:68,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].isAccessible()"
    - Src: "com.google.inject.internal.aop.ClassDefining:69,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].<init>()"
    - Src: "com.google.inject.internal.aop.ClassDefining:73,1"
      Dst: "[java.util.logging.Logger].warning(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ClassDefining:74,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].bootstrap$()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining].lambda$bindClassDefiner$0(java.lang.Class,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining:75,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$lambda_add_0__188"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$lambda_add_0__188:-1,1"
      Dst: "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].<init>()"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$lambda_add_0__188"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$lambda_add_0__188:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$lambda_add_0__188"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet].lambda$add$0(com.google.inject.Key)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$lambda_add_0__188:-1,1"
      Dst: "[com.google.inject.internal.WeakKeySet].lambda$add$0(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet].lambda$add$0(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "com.google.common.collect.Multiset"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.LinkedHashMultiset].create()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:89,1"
      Dst: "[com.google.common.collect.LinkedHashMultiset].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$1].visit(com.google.inject.spi.InstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.InstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.InstanceBinding)"
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.InstanceBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.InstanceBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:60,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.InstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].getInstance()"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].getInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].getDependencies()"
    - "[com.google.inject.internal.ConstructorBindingImpl].getDependencies()"
    - "[com.google.inject.spi.ProviderLookup$1].getDependencies()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].getDependencies()"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].getDependencies()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.InstanceBindingImpl].getDependencies()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getDependencies()"
    - "[com.google.inject.internal.LinkedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.ExposedBindingImpl].getDependencies()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getDependencies()"
    - "[com.google.inject.internal.ProviderMethod:com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:com.google.inject.internal.RealMapBinder$RealProviderMapProvider:com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider:com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider:com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].getDependencies()"
    - "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    - "[com.google.inject.spi.HasDependencies].getDependencies()"
    functionUses: 3
    ICount: 13
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InstanceBindingImpl:75"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:77"
        BranchSideFuncs:
        - "getDependencies()"
        - "copyOf(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:76"
        BranchSideFuncs:
        - "forInjectionPoints(java.util.Set)"
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:76,1"
      Dst: "[com.google.inject.spi.HasDependencies].getDependencies()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:76,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:77,1"
      Dst: "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:82,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:82,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:82,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:87,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:87,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:87,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingBuilder].toInstance(java.lang.Object)"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:93,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:93,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:93,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:93,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:93,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:98,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:99,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:99,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:100,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:102,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InstanceBindingImpl:107"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:113"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:112"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InstanceBindingImpl:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InstanceBindingImpl:110"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InstanceBindingImpl:111"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InstanceBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:109,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:109,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:110,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:110,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InstanceBindingImpl:111,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InstanceBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.InstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InstanceBindingImpl:119,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:119,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InstanceBindingImpl:119,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData].<init>(java.lang.Object,com.google.inject.Binding[],com.google.inject.internal.SingleParameterInjector[])"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData"
    linkageType: ""
    functionLinenumber: 1110
    functionLinenumberEnd: 1118
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Binding[]"
    - "com.google.inject.internal.SingleParameterInjector[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData:1112"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData:1111"
        BranchSideFuncs:
        - "checkArgument(boolean)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData:1110"
        BranchSideFuncs:
        - "<init>()"
        - "checkArgument(boolean)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData:1111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData:1112,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Guice].<init>()"
    functionSourceFile: "com.google.inject.Guice"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Guice:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Guice].createInjector(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.Guice"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.Guice].createInjector(java.lang.Iterable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Guice:59,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.Guice:59,1"
      Dst: "[com.google.inject.Guice].createInjector(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Guice].createInjector(java.lang.Iterable<? extends\
      \ Module>)"
    functionSourceFile: "com.google.inject.Guice"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Guice].createInjector(com.google.inject.Stage,java.lang.Iterable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Guice:69,1"
      Dst: "[com.google.inject.Guice].createInjector(com.google.inject.Stage,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Guice].createInjector(com.google.inject.Stage,com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.Guice"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 2
    argTypes:
    - "com.google.inject.Stage"
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.Guice].createInjector(com.google.inject.Stage,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Guice:78,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.Guice:78,1"
      Dst: "[com.google.inject.Guice].createInjector(com.google.inject.Stage,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Guice].createInjector(com.google.inject.Stage,java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.Guice"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 16
    returnType: "com.google.inject.Injector"
    argCount: 2
    argTypes:
    - "com.google.inject.Stage"
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalInjectorCreator].<init>()"
    - "[com.google.inject.internal.InternalInjectorCreator].addModules(java.lang.Iterable)"
    - "[com.google.inject.internal.InternalInjectorCreator].build()"
    - "[com.google.inject.internal.InternalInjectorCreator].stage(com.google.inject.Stage)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Guice:87,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].<init>()"
    - Src: "com.google.inject.Guice:87,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].stage(com.google.inject.Stage)"
    - Src: "com.google.inject.Guice:87,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].addModules(java.lang.Iterable)"
    - Src: "com.google.inject.Guice:87,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].stage(com.google.inject.Stage)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "com.google.inject.internal.InternalInjectorCreator"
    argCount: 1
    argTypes:
    - "com.google.inject.Stage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorShell$Builder].stage(com.google.inject.Stage)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:80,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].stage(com.google.inject.Stage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToProviderAdapter].<init>(com.google.inject.Provider,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToProviderAdapter"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Provider"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:31,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToProviderAdapter"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalContext].setDependency(com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    - "[com.google.inject.internal.InjectorImpl$1].get()"
    - "[com.google.inject.spi.ProviderLookup$1].get()"
    - "[com.google.inject.internal.SingletonScope$1].get()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    - "[com.google.inject.spi.Dependency].isNullable()"
    - "[com.google.inject.internal.InternalProvisionException].onNullInjectedIntoNonNullableDependency(java.lang.Object,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    - "[com.google.inject.Provider].get()"
    functionUses: 12
    ICount: 18
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalFactoryToProviderAdapter:46"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFactoryToProviderAdapter:49"
        BranchSideFuncs:
        - "onNullInjectedIntoNonNullableDependency(java.lang.Object,com.google.inject.spi.Dependency)"
      - BranchSide: "com.google.inject.internal.InternalFactoryToProviderAdapter:48"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InternalFactoryToProviderAdapter:46"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFactoryToProviderAdapter:49"
        BranchSideFuncs:
        - "onNullInjectedIntoNonNullableDependency(java.lang.Object,com.google.inject.spi.Dependency)"
      - BranchSide: "com.google.inject.internal.InternalFactoryToProviderAdapter:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:43,1"
      Dst: "[com.google.inject.internal.InternalContext].setDependency(com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:45,1"
      Dst: "[com.google.inject.Provider].get()"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:46,1"
      Dst: "[com.google.inject.spi.Dependency].isNullable()"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:47,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].onNullInjectedIntoNonNullableDependency(java.lang.Object,com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:51,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:51,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Dependency].isNullable()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    functionSourceFile: "com.google.inject.internal.InternalFactoryToProviderAdapter"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[java.lang.Object].toString()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider].toString()"
    functionUses: 21
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFactoryToProviderAdapter:57,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Any].<init>()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Any"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Any:44,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Any"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Any].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Any"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Any].readResolve()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Any"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers].any()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Any:56,1"
      Dst: "[com.google.inject.matcher.Matchers].any()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].any()"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$2].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Messages$2"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$2:217,1"
      Dst: "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$2].toString(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.Messages$2"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.Classes].toString(java.lang.reflect.Member)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$2:220,1"
      Dst: "[com.google.inject.internal.util.Classes].toString(java.lang.reflect.Member)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.Classes].toString(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.internal.util.Classes"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getName()"
    - "[com.google.common.reflect.Invokable].getName()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[java.lang.reflect.Member].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.Classes:46"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:48"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.Classes:47"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.Classes:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:50"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.Classes:49"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.Classes:50"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:53"
        BranchSideFuncs:
        - "getName()"
        - "getDeclaringClass()"
      - BranchSide: "com.google.inject.internal.util.Classes:52"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "com.google.inject.internal.util.Classes:44,1"
      Dst: "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.util.Classes:47,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.util.Classes:47,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.Classes:47,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "com.google.inject.internal.util.Classes:47,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.util.Classes:51,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.util.Classes:53,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$2].toString(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$2"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$2].toString(java.lang.reflect.Member)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$2:217,1"
      Dst: "[com.google.inject.internal.Messages$2].toString(java.lang.reflect.Member)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$6"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "com.google.inject.internal.TypeConverterBindingProcessor$6:162"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor$6:165"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor$6:164"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$6:161,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$6:166,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$6"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$Not].toString()"
    - "[com.google.inject.matcher.Matchers$Only].toString()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].toString()"
    - "[java.lang.Object].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.matcher.Matchers$Returns].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].toString()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].toString()"
    - "[com.google.inject.matcher.Matchers$Any].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.matcher.Matchers$AndMatcher].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$6:171,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$6"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(com.google.inject.TypeLiteral)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$6:158,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorId].values()"
    functionSourceFile: "com.google.inject.internal.ErrorId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.ErrorId[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ErrorId:4,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorId].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.ErrorId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.ErrorId"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ErrorId:4,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorId].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.ErrorId"
    linkageType: ""
    functionLinenumber: 3
    functionLinenumberEnd: 5
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 60
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ErrorId:4,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ErrorId].$values()"
    functionSourceFile: "com.google.inject.internal.ErrorId"
    linkageType: ""
    functionLinenumber: 3
    functionLinenumberEnd: 5
    functionDepth: 0
    returnType: "com.google.inject.internal.ErrorId[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 122
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalClassesToSkipSources].<init>()"
    functionSourceFile: "com.google.inject.internal.InternalClassesToSkipSources"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalClassesToSkipSources:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalClassesToSkipSources].classesToSkipSources()"
    functionSourceFile: "com.google.inject.internal.InternalClassesToSkipSources"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalClassesToSkipSources:27,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].<init>()"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].not(com.google.inject.matcher.Matcher<?\
      \ super T>)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.matcher.Matcher<? super T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$Not].<init>(com.google.inject.matcher.Matcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:64,1"
      Dst: "[com.google.inject.matcher.Matchers$Not].<init>(com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].checkForRuntimeRetention(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[java.lang.annotation.Retention].value()"
    - "[java.lang.Class].getSimpleName()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers:99"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers:102"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.matcher.Matchers:101"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers:100"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:98,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.matcher.Matchers:100,1"
      Dst: "[java.lang.annotation.Retention].value()"
    - Src: "com.google.inject.matcher.Matchers:102,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.matcher.Matchers:99,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers].annotatedWith(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<AnnotatedElement>"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].<init>(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:108,1"
      Dst: "[com.google.inject.matcher.Matchers$AnnotatedWithType].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].annotatedWith(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<AnnotatedElement>"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].<init>(java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:146,1"
      Dst: "[com.google.inject.matcher.Matchers$AnnotatedWith].<init>(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].subclassesOf(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Class>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$SubclassesOf].<init>(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:185,1"
      Dst: "[com.google.inject.matcher.Matchers$SubclassesOf].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].only(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Object>"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$Only].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:220,1"
      Dst: "[com.google.inject.matcher.Matchers$Only].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Only].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Only"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Only:226,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$Only:227,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].inPackage(java.lang.Package)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Class>"
    argCount: 1
    argTypes:
    - "java.lang.Package"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InPackage].<init>(java.lang.Package)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:293,1"
      Dst: "[com.google.inject.matcher.Matchers$InPackage].<init>(java.lang.Package)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].<init>(java.lang.Package)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Package"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.Package].getName()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:300,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    - Src: "com.google.inject.matcher.Matchers$InPackage:301,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.matcher.Matchers$InPackage:302,1"
      Dst: "[java.lang.Package].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].inSubpackage(java.lang.String)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Class>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:339,1"
      Dst: "[com.google.inject.matcher.Matchers$InSubpackage].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.AbstractMatcher].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:345,1"
      Dst: "[com.google.inject.matcher.AbstractMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers].returns(com.google.inject.matcher.Matcher<?\
      \ super Class<?>>)"
    functionSourceFile: "com.google.inject.matcher.Matchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.matcher.Matcher<Method>"
    argCount: 1
    argTypes:
    - "com.google.inject.matcher.Matcher<? super Class<?>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$Returns].<init>(com.google.inject.matcher.Matcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers:377,1"
      Dst: "[com.google.inject.matcher.Matchers$Returns].<init>(com.google.inject.matcher.Matcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$NativeTypeVariableEquals].<init>()"
    functionSourceFile: "com.google.common.reflect.Types$NativeTypeVariableEquals"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$NativeTypeVariableEquals:681,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].newInstance(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy:82,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy:84,1"
      Dst: "[java.lang.reflect.InvocationTargetException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getInjectionPoint()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getConstructor()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Constructor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getMethodInterceptors()"
    functionSourceFile: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].of()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy:100,1"
      Dst: "[com.google.common.collect.ImmutableMap].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 339
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - "[java.util.Optional].empty()"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[java.util.Optional].of(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:333"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:336"
        BranchSideFuncs:
        - "empty()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:335"
        BranchSideFuncs:
        - "getProvider()"
        - "getBinding()"
        - "of(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:333,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:334,1"
      Dst: "[java.util.Optional].empty()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:336,1"
      Dst: "[com.google.inject.internal.BindingImpl].getProvider()"
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:336,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "java.util.Optional"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].providerDependencies()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:348,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].providerDependencies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].providerDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 633
    functionLinenumberEnd: 635
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1222
    functionLinenumberEnd: 1224
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1223,1"
      Dst: "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1223,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1223,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1227
    functionLinenumberEnd: 1231
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Binding].getProvider()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1228,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1229,1"
      Dst: "[com.google.inject.Binding].getProvider()"
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1229,1"
      Dst: "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1234
    functionLinenumberEnd: 1236
    functionDepth: 0
    returnType: "java.util.Map$Entry"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1247
    functionLinenumberEnd: 1253
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    functionUses: 56
    ICount: 18
    EdgeCount: 388
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1252"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1251"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1250"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1248"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1250"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1248"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1250,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1250,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1256
    functionLinenumberEnd: 1258
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1257,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].toString()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ProviderMapEntry"
    linkageType: ""
    functionLinenumber: 1261
    functionLinenumberEnd: 1263
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object,com.google.inject.Key)"
    functionUses: 22
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ProviderMapEntry:1262,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].lambda$getPermits$2(java.lang.Class)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].lambda$getPermits$2(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].lambda$getPermits$2(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 351
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:350,1"
      Dst: "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback$Provision].getBinding()"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback$Provision"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Binding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.Classes].<init>()"
    functionSourceFile: "com.google.inject.internal.util.Classes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.Classes:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.Classes].isInnerClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.util.Classes"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getEnclosingClass()"
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.Classes:31"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:30"
        BranchSideFuncs:
        - "getModifiers()"
        - "getEnclosingClass()"
        - "isStatic(int)"
    - Branch String: "com.google.inject.internal.util.Classes:31"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:30"
        BranchSideFuncs:
        - "getModifiers()"
        - "getEnclosingClass()"
        - "isStatic(int)"
    Callsites:
    - Src: "com.google.inject.internal.util.Classes:31,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.util.Classes:31,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "com.google.inject.internal.util.Classes:31,1"
      Dst: "[java.lang.Class].getEnclosingClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.util.Classes].isConcrete(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.util.Classes"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[java.lang.Class].isInterface()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.Classes:36"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:34"
        BranchSideFuncs:
        - "isAbstract(int)"
        - "isInterface()"
        - "getModifiers()"
    - Branch String: "com.google.inject.internal.util.Classes:36"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.Classes:34"
        BranchSideFuncs:
        - "isAbstract(int)"
        - "isInterface()"
        - "getModifiers()"
    Callsites:
    - Src: "com.google.inject.internal.util.Classes:35,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.util.Classes:36,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "com.google.inject.internal.util.Classes:36,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types].newArrayType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 76
    functionDepth: 4
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - "[com.google.common.reflect.Types].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types].supertypeOf(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.common.reflect.Types].subtypeOf(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$2].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$1].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].newArrayType(java.lang.reflect.Type)"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    - "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    functionUses: 4
    ICount: 31
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:63"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:75"
        BranchSideFuncs:
        - "getLowerBounds()"
      - BranchSide: "com.google.common.reflect.Types:74"
        BranchSideFuncs:
        - "newArrayType(java.lang.reflect.Type)"
    - Branch String: "com.google.common.reflect.Types:66"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:64"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types:63"
        BranchSideFuncs:
        - "getLowerBounds()"
    - Branch String: "com.google.common.reflect.Types:67"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:70"
        BranchSideFuncs:
        - "supertypeOf(java.lang.reflect.Type)"
      - BranchSide: "com.google.common.reflect.Types:69"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "checkArgument(boolean,java.lang.Object)"
    - Branch String: "com.google.common.reflect.Types:71"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:70"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.Object)"
        - "subtypeOf(java.lang.reflect.Type)"
      - BranchSide: "com.google.common.reflect.Types:69"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "checkArgument(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.common.reflect.Types:65,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.common.reflect.Types:66,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - Src: "com.google.common.reflect.Types:68,1"
      Dst: "[com.google.common.reflect.Types].newArrayType(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types:68,1"
      Dst: "[com.google.common.reflect.Types].supertypeOf(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types:70,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.common.reflect.Types:72,1"
      Dst: "[com.google.common.reflect.Types].subtypeOf(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types:75,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types].supertypeOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 3
    returnType: "java.lang.reflect.WildcardType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:159,1"
      Dst: "[com.google.common.reflect.Types$WildcardTypeImpl].<init>(java.lang.reflect.Type[],java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Class"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].newParameterizedType(java.lang.Class,java.lang.reflect.Type[])"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    - "[java.lang.Class].getEnclosingClass()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:84"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:88"
        BranchSideFuncs:
        - "newParameterizedType(java.lang.Class,java.lang.reflect.Type[])"
      - BranchSide: "com.google.common.reflect.Types:87"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
        - "getEnclosingClass()"
        - "checkNotNull(java.lang.Object)"
    - Branch String: "com.google.common.reflect.Types:89"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:88"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
        - "getEnclosingClass()"
        - "<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
      - BranchSide: "com.google.common.reflect.Types:87"
        BranchSideFuncs:
        - "checkArgument(boolean,java.lang.String,java.lang.Object)"
        - "getEnclosingClass()"
        - "checkNotNull(java.lang.Object)"
    Callsites:
    - Src: "com.google.common.reflect.Types:85,1"
      Dst: "[com.google.common.reflect.Types].newParameterizedType(java.lang.Class,java.lang.reflect.Type[])"
    - Src: "com.google.common.reflect.Types:88,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types:89,1"
      Dst: "[java.lang.Class].getEnclosingClass()"
    - Src: "com.google.common.reflect.Types:89,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    - Src: "com.google.common.reflect.Types:90,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types].newParameterizedType(java.lang.Class,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 3
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    - "[com.google.common.reflect.Types$ClassOwnership$2].getOwnerType(java.lang.Class)"
    - "[com.google.common.reflect.Types$ClassOwnership$1].getOwnerType(java.lang.Class)"
    - "[com.google.common.reflect.Types$ClassOwnership].getOwnerType(java.lang.Class)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:96,1"
      Dst: "[com.google.common.reflect.Types$ClassOwnership].getOwnerType(java.lang.Class)"
    - Src: "com.google.common.reflect.Types:96,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].<init>(java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 271
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Class"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - "[java.lang.Class].getTypeParameters()"
    - "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type[])"
    functionUses: 2
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:265"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:263"
        BranchSideFuncs:
        - "getTypeParameters()"
        - "access$200(java.lang.reflect.Type[],java.lang.String)"
        - "checkArgument(boolean)"
        - "usedInGenericType(java.lang.reflect.Type[])"
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:262"
        BranchSideFuncs:
        - "getTypeParameters()"
        - "<init>()"
        - "checkArgument(boolean)"
        - "checkNotNull(java.lang.Object)"
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:263,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:264,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:265,1"
      Dst: "[java.lang.Class].getTypeParameters()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:265,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:266,1"
      Dst: "[com.google.common.reflect.Types].access$200(java.lang.reflect.Type[],java.lang.String)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:269,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types].newArtificialTypeVariable(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 4
    returnType: "java.lang.reflect.TypeVariable"
    argCount: 3
    argTypes:
    - "java.lang.reflect.GenericDeclaration"
    - "java.lang.String"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].newTypeVariableImpl(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:147"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:145"
        BranchSideFuncs:
        - "newTypeVariableImpl(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    Callsites:
    - Src: "com.google.common.reflect.Types:146,1"
      Dst: "[com.google.common.reflect.Types].newTypeVariableImpl(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types].newTypeVariableImpl(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 331
    functionDepth: 3
    returnType: "java.lang.reflect.TypeVariable"
    argCount: 3
    argTypes:
    - "java.lang.reflect.GenericDeclaration"
    - "java.lang.String"
    - "java.lang.reflect.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$TypeVariableImpl].<init>(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    - "[com.google.common.reflect.Types$TypeVariableInvocationHandler].<init>(com.google.common.reflect.Types$TypeVariableImpl)"
    - "[com.google.common.reflect.Reflection].newProxy(java.lang.Class,java.lang.reflect.InvocationHandler)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:325,1"
      Dst: "[com.google.common.reflect.Types$TypeVariableImpl].<init>(java.lang.reflect.GenericDeclaration,java.lang.String,java.lang.reflect.Type[])"
    - Src: "com.google.common.reflect.Types:327,1"
      Dst: "[com.google.common.reflect.Types$TypeVariableInvocationHandler].<init>(com.google.common.reflect.Types$TypeVariableImpl)"
    - Src: "com.google.common.reflect.Types:328,1"
      Dst: "[com.google.common.reflect.Reflection].newProxy(java.lang.Class,java.lang.reflect.InvocationHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$TypeVariableInvocationHandler].<init>(com.google.common.reflect.Types$TypeVariableImpl)"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableInvocationHandler"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.reflect.Types$TypeVariableImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:380,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].toString(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 3
    ICount: 8
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types:168"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types:167"
        BranchSideFuncs:
        - "getName()"
        - "toString()"
    Callsites:
    - Src: "com.google.common.reflect.Types:168,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.common.reflect.Types:168,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types].filterUpperBounds(java.lang.Iterable)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionDepth: 0
    returnType: "java.lang.Iterable"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Predicates].equalTo(java.lang.Object)"
    - "[com.google.common.collect.Iterables].filter(java.lang.Iterable,com.google.common.base.Predicate)"
    - "[com.google.common.base.Predicates].not(com.google.common.base.Predicate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:525,1"
      Dst: "[com.google.common.base.Predicates].equalTo(java.lang.Object)"
    - Src: "com.google.common.reflect.Types:525,1"
      Dst: "[com.google.common.base.Predicates].not(com.google.common.base.Predicate)"
    - Src: "com.google.common.reflect.Types:525,1"
      Dst: "[com.google.common.collect.Iterables].filter(java.lang.Iterable,com.google.common.base.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].getArrayClass(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 543
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:542,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "com.google.common.reflect.Types:542,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].<init>()"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:687,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].access$400()"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "com.google.common.base.Joiner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types].access$600(java.lang.Iterable)"
    functionSourceFile: "com.google.common.reflect.Types"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "java.lang.Iterable"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].filterUpperBounds(java.lang.Iterable)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types:56,1"
      Dst: "[com.google.common.reflect.Types].filterUpperBounds(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38].define(java.lang.Class,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassDefining].lambda$bindClassDefiner$0(java.lang.Class,byte[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining$lambda_bindClassDefiner_0__38:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].lambda$bindClassDefiner$0(java.lang.Class,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl].getEnhanceableMethods()"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.reflect.Method[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl].buildEnhancer(java.util.BitSet)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    argCount: 1
    argTypes:
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.ClassValue:java.security.Provider:java.util.HashMap:java.util.Hashtable:java.util.Map:java.util.Properties:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentMap].get(java.lang.Class)"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].bootstrap$(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.cache.LocalCache].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - "[java.lang.ClassValue].get(java.lang.Class)"
    - "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    functionUses: 1
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.EnhancerBuilderImpl:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.EnhancerBuilderImpl:85"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.aop.EnhancerBuilderImpl:84"
        BranchSideFuncs:
        - "computeIfAbsent(java.lang.Object,java.util.function.Function)"
        - "get(java.lang.Class)"
        - "bootstrap$(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:80,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:81,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:85,1"
      Dst: "[java.lang.ClassValue].get(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:87,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].bootstrap$(com.google.inject.internal.aop.EnhancerBuilderImpl)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:87,1"
      Dst: "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl].lambda$doBuildEnhancer$0(java.util.NavigableMap,java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.NavigableMap"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:98,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl:98,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].isIndexable(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.Key].getAnnotation()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:107,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.Indexer:107,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    - "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:111,1"
      Dst: "[com.google.inject.Binding].acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ConstructorBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ConstructorBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.ConstructorBinding].getConstructor()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:117,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:117,1"
      Dst: "[com.google.inject.spi.ConstructorBinding].getConstructor()"
    - Src: "com.google.inject.internal.Indexer:117,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Indexer$IndexedBinding"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.Binding"
    - "com.google.inject.internal.Indexer$BindingType"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].getAnnotation()"
    - "[com.google.inject.internal.RealElement].setName()"
    - "[com.google.inject.internal.RealElement].type()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.internal.Element].setName()"
    - "[com.google.inject.internal.Element].type()"
    functionUses: 9
    ICount: 20
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:73,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:73,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:74,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:75,1"
      Dst: "[com.google.inject.internal.Element].setName()"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:76,1"
      Dst: "[com.google.inject.internal.Element].type()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ConvertedConstantBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ConvertedConstantBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getValue()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.ConvertedConstantBinding].getValue()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:123,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:123,1"
      Dst: "[com.google.inject.spi.ConvertedConstantBinding].getValue()"
    - Src: "com.google.inject.internal.Indexer:123,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ExposedBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ExposedBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:128,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:128,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.InstanceBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InstanceBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].getInstance()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.InstanceBinding].getInstance()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:134,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:134,1"
      Dst: "[com.google.inject.spi.InstanceBinding].getInstance()"
    - Src: "com.google.inject.internal.Indexer:134,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.LinkedKeyBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.LinkedKeyBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:140,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:140,1"
      Dst: "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - Src: "com.google.inject.internal.Indexer:140,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].getProvidedKey()"
    - "[com.google.inject.spi.ProviderBinding].getProvidedKey()"
    - "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:148,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:149,1"
      Dst: "[com.google.inject.spi.ProviderBinding].getProvidedKey()"
    - Src: "com.google.inject.internal.Indexer:149,1"
      Dst: "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.Indexer:149,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderInstanceBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    functionUses: 6
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:155,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:155,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.Indexer:155,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderKeyBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderKeyBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getProviderKey()"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - "[com.google.inject.spi.ProviderKeyBinding].getProviderKey()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:161,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:161,1"
      Dst: "[com.google.inject.spi.ProviderKeyBinding].getProviderKey()"
    - Src: "com.google.inject.internal.Indexer:161,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.UntargettedBinding<?\
      \ extends Object>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 2
    returnType: "com.google.inject.internal.Indexer$IndexedBinding"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.UntargettedBinding<? extends Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer:166,1"
      Dst: "[com.google.inject.internal.Indexer].scope(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.Indexer:166,1"
      Dst: "[com.google.inject.internal.Indexer$IndexedBinding].<init>(com.google.inject.Binding,com.google.inject.internal.Indexer$BindingType,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visitEagerSingleton()"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visitNoScoping()"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visitScope(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer].visitScopeAnnotation(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Indexer"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor<R>)"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<R>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.InjectionRequest)"
    - "[com.google.inject.internal.InjectionRequestProcessor].visit(com.google.inject.spi.InjectionRequest)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.InjectionRequest)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:85,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.InjectionRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionRequest].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    functionUses: 4
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:90,1"
      Dst: "[com.google.inject.spi.InjectionRequest].getSource()"
    - Src: "com.google.inject.spi.InjectionRequest:90,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionRequest:90,1"
      Dst: "[com.google.inject.Binder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.base.Absent:com.google.common.base.Predicates$InstanceOfPredicate:com.google.common.base.Predicates$SubtypeOfPredicate:com.google.common.cache.CacheStats:com.google.common.collect.Count:com.google.common.collect.ImmutableEnumSet:com.google.common.hash.Murmur3_128HashFunction:com.google.common.hash.Murmur3_32HashFunction:com.google.common.hash.SipHashFunction:com.google.common.primitives.UnsignedInteger:com.google.common.primitives.UnsignedLong:com.google.common.reflect.TypeParameter:com.google.inject.matcher.Matchers$IdenticalTo:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.security.auth.Subject:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 56
    ICount: 23
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionRequest:95"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionRequest:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionRequest:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionRequest:96"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionRequest:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionRequest:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionRequest:97"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionRequest:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionRequest:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionRequest:98"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:96,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionRequest:97,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionRequest:98,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.InjectionRequest].hashCode()"
    functionSourceFile: "com.google.inject.spi.InjectionRequest"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionRequest:103,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$add__146].bootstrap$(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$add__146"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ScopeNotFoundError$add__146].<init>(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$add__146:-1,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError$add__146].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$add__146].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$add__146"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$add__146:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError$add__146].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError$add__146"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 5
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError$add__146:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderToInternalFactoryAdapter].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory)"
    functionSourceFile: "com.google.inject.internal.ProviderToInternalFactoryAdapter"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.InternalFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    functionSourceFile: "com.google.inject.internal.ProviderToInternalFactoryAdapter"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].enterContext()"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalContext].getDependency()"
    - "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    - "[com.google.inject.internal.InternalContext].close()"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 7
    ICount: 14
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:35,1"
      Dst: "[com.google.inject.internal.InjectorImpl].enterContext()"
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:40,1"
      Dst: "[com.google.inject.internal.InternalContext].getDependency()"
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:40,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:45,1"
      Dst: "[com.google.inject.internal.InternalContext].close()"
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:43,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderToInternalFactoryAdapter].getInjector()"
    functionSourceFile: "com.google.inject.internal.ProviderToInternalFactoryAdapter"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "com.google.inject.internal.InjectorImpl"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    functionSourceFile: "com.google.inject.internal.ProviderToInternalFactoryAdapter"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[java.lang.Object].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.RealMapBinder$ProviderMapEntry].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderToInternalFactoryAdapter:56,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider"
    linkageType: ""
    functionLinenumber: 1064
    functionLinenumberEnd: 1066
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].doInitialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider"
    linkageType: ""
    functionLinenumber: 1069
    functionLinenumberEnd: 1090
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapBindings()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Set].iterator()"
    - "[com.google.inject.Binding].getProvider()"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.Map$Entry].getKey()"
    functionUses: 1
    ICount: 41
    EdgeCount: 349
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1070"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1073"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1072"
        BranchSideFuncs:
        - "getMultimapBindings()"
        - "entrySet()"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1087"
        BranchSideFuncs:
        - "hasNext()"
        - "getMultimapBindings()"
        - "getValue()"
        - "next()"
        - "iterator()"
        - "builder()"
        - "entrySet()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1086"
        BranchSideFuncs:
        - "buildOrThrow()"
        - "build()"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1080"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1085"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "getKeyOfProvider(com.google.inject.Key)"
        - "getValue()"
        - "next()"
        - "get(com.google.inject.Key)"
        - "getProvider()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1084"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1075,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1076,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1078,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1080,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1080,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1081,1"
      Dst: "[com.google.inject.Binding].getProvider()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1081,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1082,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1082,1"
      Dst: "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1082,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1085,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1085,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1085,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:1087,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider"
    linkageType: ""
    functionLinenumber: 1093
    functionLinenumberEnd: 1095
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "java.util.List"
    - "java.lang.Object"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:46,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].annotatedWith(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:51,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].annotatedWith(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:57,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].annotatedWithInternal(java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].'to'(java.lang.Class<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:63,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.BindingBuilder:63,1"
      Dst: "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.TypeLiteral<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:68,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.BindingBuilder:68,1"
      Dst: "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 11
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:73,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingBuilder:74,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - Src: "com.google.inject.internal.BindingBuilder:75,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:77,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.BindingBuilder:77,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:77,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.BindingBuilder:77,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingBuilder:76,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toInstance(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingBuilder:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingBuilder:94"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:83,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - Src: "com.google.inject.internal.BindingBuilder:89,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.BindingBuilder:89,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - Src: "com.google.inject.internal.BindingBuilder:91,1"
      Dst: "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - Src: "com.google.inject.internal.BindingBuilder:92,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.BindingBuilder:95,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.BindingBuilder:96,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.BindingBuilder:99,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:102,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.BindingBuilder:102,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:102,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingBuilder:100,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 204
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.ConfigurationException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(com.google.inject.spi.Message)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    functionUses: 4
    ICount: 12
    EdgeCount: 276
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingBuilder:200"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingBuilder:203"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getErrorMessages()"
        - "next()"
        - "addError(com.google.inject.spi.Message)"
      - BranchSide: "com.google.inject.internal.BindingBuilder:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:200,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.BindingBuilder:200,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.BindingBuilder:200,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.BindingBuilder:200,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.BindingBuilder:201,1"
      Dst: "[com.google.inject.Binder].addError(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Provider<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingBuilder].toProvider(jakarta.inject.Provider)"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:107,1"
      Dst: "[com.google.inject.internal.BindingBuilder].toProvider(jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toProvider(jakarta.inject.Provider<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 129
    functionDepth: 2
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "jakarta.inject.Provider<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 2
    ICount: 19
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:112,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingBuilder:113,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - Src: "com.google.inject.internal.BindingBuilder:118,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.BindingBuilder:118,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - Src: "com.google.inject.internal.BindingBuilder:120,1"
      Dst: "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - Src: "com.google.inject.internal.BindingBuilder:121,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.BindingBuilder:124,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:127,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.BindingBuilder:127,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:127,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.BindingBuilder:127,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,java.util.Set,jakarta.inject.Provider)"
    - Src: "com.google.inject.internal.BindingBuilder:125,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toProvider(java.lang.Class<?\
      \ extends jakarta.inject.Provider<? extends T>>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends jakarta.inject.Provider<? extends T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:134,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.BindingBuilder:134,1"
      Dst: "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.TypeLiteral<?\
      \ extends jakarta.inject.Provider<? extends T>>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<? extends jakarta.inject.Provider<? extends T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:140,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.BindingBuilder:140,1"
      Dst: "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key<?\
      \ extends jakarta.inject.Provider<? extends T>>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 154
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingBuilder<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<? extends jakarta.inject.Provider<? extends T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 1
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:146,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingBuilder:147,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - Src: "com.google.inject.internal.BindingBuilder:149,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:152,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.BindingBuilder:152,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:152,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.BindingBuilder:152,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingBuilder:150,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:67,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toConstructor(java.lang.reflect.Constructor<S>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.binder.ScopedBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<S>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.internal.BindingBuilder].toConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:158,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.internal.BindingBuilder:158,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.BindingBuilder:158,1"
      Dst: "[com.google.inject.internal.BindingBuilder].toConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toConstructor(java.lang.reflect.Constructor<S>,com.google.inject.TypeLiteral<?\
      \ extends S>)"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 192
    functionDepth: 3
    returnType: "com.google.inject.binder.ScopedBindingBuilder"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor<S>"
    - "com.google.inject.TypeLiteral<? extends S>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.spi.InjectionPoint].forConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.Key,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.spi.InjectionPoint,java.util.Set)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    functionUses: 1
    ICount: 24
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:164,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingBuilder:166,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].checkNotTargetted()"
    - Src: "com.google.inject.internal.BindingBuilder:168,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:172,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.BindingBuilder:174,1"
      Dst: "[com.google.inject.internal.BindingBuilder].copyErrorsToBinder(com.google.inject.ConfigurationException)"
    - Src: "com.google.inject.internal.BindingBuilder:175,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.BindingBuilder:179,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.BindingBuilder:182,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:183,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.BindingBuilder:184,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.BindingBuilder:184,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.Key,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.spi.InjectionPoint,java.util.Set)"
    - Src: "com.google.inject.internal.BindingBuilder:180,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].setBinding(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.Key,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.spi.InjectionPoint,java.util.Set)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.spi.InjectionPoint"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].<init>(boolean,com.google.inject.Key)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    - "[com.google.inject.internal.ConstructorInjector].<init>(java.util.Set,com.google.inject.internal.ConstructionProxy,com.google.inject.internal.SingleParameterInjector[],com.google.inject.internal.MembersInjectorImpl)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:70,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:71,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl$Factory].<init>(boolean,com.google.inject.Key)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:72,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:73,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:75,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].<init>(java.util.Set,com.google.inject.internal.ConstructionProxy,com.google.inject.internal.SingleParameterInjector[],com.google.inject.internal.MembersInjectorImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl$Factory].<init>(boolean,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl$Factory"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl$Factory:280,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjector].<init>(java.util.Set,com.google.inject.internal.ConstructionProxy,com.google.inject.internal.SingleParameterInjector[],com.google.inject.internal.MembersInjectorImpl)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Set"
    - "com.google.inject.internal.ConstructionProxy"
    - "com.google.inject.internal.SingleParameterInjector[]"
    - "com.google.inject.internal.MembersInjectorImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjector:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ConstructorInjector:45,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingBuilder].toString()"
    functionSourceFile: "com.google.inject.internal.BindingBuilder"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingBuilder:196,1"
      Dst: "[com.google.inject.internal.AbstractBindingBuilder].getBinding()"
    - Src: "com.google.inject.internal.BindingBuilder:196,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.BindingBuilder:196,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.BindingBuilder:196,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$isMergeable__63].bootstrap$(com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.internal.Messages$isMergeable__63"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$isMergeable__63].<init>(com.google.inject.spi.ErrorDetail)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$isMergeable__63:-1,1"
      Dst: "[com.google.inject.internal.Messages$isMergeable__63].<init>(com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$isMergeable__63].<init>(com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.internal.Messages$isMergeable__63"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$isMergeable__63:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$isMergeable__63].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$isMergeable__63"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError].isMergeable(com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.ScopeNotFoundError].isMergeable(com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.MissingImplementationError].isMergeable(com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.MissingConstructorError].isMergeable(com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError].isMergeable(com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.spi.ErrorDetail].isMergeable(com.google.inject.spi.ErrorDetail)"
    functionUses: 9
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$isMergeable__63:-1,1"
      Dst: "[com.google.inject.spi.ErrorDetail].isMergeable(com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.StackTraceElement)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StackTraceElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StackTraceElement].getClassName()"
    - "[java.lang.StackTraceElement].getMethodName()"
    - "[java.lang.StackTraceElement].getLineNumber()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.String,java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:155,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:155,1"
      Dst: "[java.lang.StackTraceElement].getMethodName()"
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:155,1"
      Dst: "[java.lang.StackTraceElement].getLineNumber()"
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:155,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.String,java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getClassName()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getMethodName()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getLineNumber()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 56
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:178"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:181"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:180"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:181"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:184"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:183"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:185"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:185"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:187"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:185,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].hashCode()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 34
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:192,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].toString()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,int)"
    functionUses: 19
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:199,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ConfigurationException].withPartialValue(java.lang.Object)"
    functionSourceFile: "com.google.inject.ConfigurationException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "com.google.inject.ConfigurationException"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.ConfigurationException:45"
      Branch Sides:
      - BranchSide: "com.google.inject.ConfigurationException:45"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.ConfigurationException:44"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.ConfigurationException:45,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.ConfigurationException:47,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.ConfigurationException].getMessage()"
    functionSourceFile: "com.google.inject.ConfigurationException"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.ConfigurationException:73,1"
      Dst: "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$3].visit(com.google.inject.spi.ScopeBinding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$3"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 359
    functionDepth: 7
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ScopeBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].remove(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].remove(java.lang.Object)"
    - "[java.util.EnumMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[com.google.inject.spi.ScopeBinding].getScope()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.inject.spi.ScopeBinding].getSource()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 38
    EdgeCount: 245
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$OverrideModule$3:340"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$3:343"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ScopeBinding)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$3:342"
        BranchSideFuncs:
        - "getScope()"
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.util.Modules$OverrideModule$3:344"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$3:357"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Modules$OverrideModule$3:350"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$3:354"
        BranchSideFuncs:
        - "hasNext()"
        - "append(java.lang.String)"
        - "next()"
        - "iterator()"
        - "convert(java.lang.Object)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$3:353"
        BranchSideFuncs:
        - "getSource()"
        - "getAnnotationType()"
        - "toString()"
        - "withSource(java.lang.Object)"
        - "getSimpleName()"
        - "addError(java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$3:339,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:339,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:341,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:343,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getScope()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:343,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:346,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:349,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getSource()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:349,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:349,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:349,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:350,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:350,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:350,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:354,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:355,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:355,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.util.Modules$OverrideModule$3:355,1"
      Dst: "[com.google.inject.Binder].addError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Nullability].<init>()"
    functionSourceFile: "com.google.inject.internal.Nullability"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Nullability:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].missingImplementation(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:159,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key<T>,com.google.inject.Injector)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionDepth: 8
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.Injector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    functionUses: 4
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:165,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:165,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    - Src: "com.google.inject.internal.Errors:166,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:166,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 31
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Injector"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,java.util.function.Supplier,java.util.List)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].bootstrap$(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    - "[com.google.common.base.Suppliers].memoize(com.google.common.base.Supplier)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:23,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].bootstrap$(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    - Src: "com.google.inject.internal.MissingImplementationError:27,1"
      Dst: "[com.google.common.base.Suppliers].memoize(com.google.common.base.Supplier)"
    - Src: "com.google.inject.internal.MissingImplementationError:23,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,java.util.function.Supplier,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].bootstrap$(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Supplier"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Injector"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].<init>(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Injector"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,java.util.function.Supplier,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "java.util.function.Supplier"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:36,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationError:36,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.MissingImplementationError:34,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].jitDisabled(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:171,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].jitDisabledInParent(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:178,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].atInjectRequired(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 191
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:190,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:190,1"
      Dst: "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    - Src: "com.google.inject.internal.Errors:190,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:186,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError:19,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MissingConstructorError:19,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].converterReturnedNull(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral<?>,com.google.inject.spi.TypeConverterBinding)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.spi.TypeConverterBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:202,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:198,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].conversionTypeError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral<?>,com.google.inject.spi.TypeConverterBinding,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.spi.TypeConverterBinding"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:219,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:213,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].conversionError(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral<?>,com.google.inject.spi.TypeConverterBinding,java.lang.RuntimeException)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 236
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.spi.TypeConverterBinding"
    - "java.lang.RuntimeException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:235,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:231,1"
      Dst: "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 554
    functionLinenumberEnd: 561
    functionDepth: 9
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].isEmpty()"
    - "[com.google.common.collect.CompactHashSet].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.cache.LocalCache$WriteQueue].isEmpty()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$3].isEmpty()"
    - "[com.google.common.collect.Sets$2].isEmpty()"
    - "[com.google.common.collect.Collections2$TransformedCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.RegularContiguousSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].isEmpty()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets$PowerSet].isEmpty()"
    - "[com.google.common.collect.Maps$EntrySet].isEmpty()"
    - "[com.google.common.collect.StandardTable$TableSet].isEmpty()"
    - "[com.google.common.collect.EmptyContiguousSet].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].isEmpty()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].isEmpty()"
    - "[com.google.common.collect.Collections2$FilteredCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.collect.Maps$KeySet].isEmpty()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].isEmpty()"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArraySet].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.collect.Collections2$PermutationCollection].isEmpty()"
    - "[com.google.common.cache.LocalCache$Values].isEmpty()"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Sets$1].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].isEmpty()"
    - "[com.google.common.collect.Sets$4].isEmpty()"
    - "[java.util.concurrent.SynchronousQueue].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Maps$Values].isEmpty()"
    - "[com.google.common.cache.LocalCache$AccessQueue].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[com.google.common.collect.Multisets$ElementSet].isEmpty()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.util.Collection].isEmpty()"
    functionUses: 3
    ICount: 12
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:557"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:560"
        BranchSideFuncs:
        - "merge(java.util.Collection)"
      - BranchSide: "com.google.inject.internal.Errors:559"
        BranchSideFuncs:
        - "addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.Errors:555,1"
      Dst: "[com.google.inject.internal.Errors].getMessagesFromThrowable(java.lang.Throwable)"
    - Src: "com.google.inject.internal.Errors:557,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.internal.Errors:558,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.internal.Errors:560,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].ambiguousTypeConversion(java.lang.String,java.lang.Object,com.google.inject.TypeLiteral<?>,com.google.inject.spi.TypeConverterBinding,com.google.inject.spi.TypeConverterBinding)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.spi.TypeConverterBinding"
    - "com.google.inject.spi.TypeConverterBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:254,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:247,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].notASubtype(java.lang.Class<?>,java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:265,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].missingRuntimeRetention(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:282,1"
      Dst: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Errors:280,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].missingScopeAnnotation(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:288,1"
      Dst: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Errors:286,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].optionalConstructor(java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:292,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotBindToGuiceType(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:299,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].scopeNotFound(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 311
    functionDepth: 7
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.ScopeNotFoundError].<init>(java.lang.Class,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:310,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:310,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError].<init>(java.lang.Class,java.util.List)"
    - Src: "com.google.inject.internal.Errors:310,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:306,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError].<init>(java.lang.Class,java.util.List)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError"
    linkageType: ""
    functionLinenumber: 17
    functionLinenumberEnd: 23
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError:18,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:18,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ScopeNotFoundError:16,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].scopeAnnotationOnAbstractType(java.lang.Class<?\
      \ extends Annotation>,java.lang.Class<?>,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    - "java.lang.Class<?>"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:321,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:315,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].misplacedBindingAnnotation(java.lang.reflect.Member,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Member"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:325,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].missingConstructor(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 344
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:343,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:343,1"
      Dst: "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    - Src: "com.google.inject.internal.Errors:343,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:339,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].tooManyConstructors(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:347,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].constructorNotDefinedByType(java.lang.reflect.Constructor<?>,com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor<?>"
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:355,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].duplicateMapKey(com.google.inject.Key<Map<K,V>>,com.google.common.collect.Multimap<K,Binding<V>>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 365
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<Map<K,V>>"
    - "com.google.common.collect.Multimap<K,Binding<V>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.DuplicateMapKeyError].<init>(com.google.inject.Key,com.google.common.collect.Multimap,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:364,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:364,1"
      Dst: "[com.google.inject.internal.DuplicateMapKeyError].<init>(com.google.inject.Key,com.google.common.collect.Multimap,java.util.List)"
    - Src: "com.google.inject.internal.Errors:364,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:360,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].duplicateScopes(com.google.inject.spi.ScopeBinding,java.lang.Class<?\
      \ extends Annotation>,com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 375
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.ScopeBinding"
    - "java.lang.Class<? extends Annotation>"
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.ScopeBinding].getScope()"
    - "[com.google.inject.spi.ScopeBinding].getSource()"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:372,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getScope()"
    - Src: "com.google.inject.internal.Errors:374,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getSource()"
    - Src: "com.google.inject.internal.Errors:369,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectInnerClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:389,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectLocalClass(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:397,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].duplicateBindingAnnotations(java.lang.reflect.Member,java.lang.Class<?\
      \ extends Annotation>,java.lang.Class<? extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 407
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Member"
    - "java.lang.Class<? extends Annotation>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:406,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].staticInjectionOnInterface(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 414
    functionLinenumberEnd: 416
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:415,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectFinalField(java.lang.reflect.Field)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 423
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:422,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].atTargetIsMissingParameter(java.lang.annotation.Annotation,java.lang.String,java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "java.lang.annotation.Annotation"
    - "java.lang.String"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:427,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectAbstractMethod(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:437,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].cannotInjectMethodWithTypeParameters(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:442,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].duplicateScopeAnnotations(java.lang.Class<?\
      \ extends Annotation>,java.lang.Class<? extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:450,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].recursiveBinding(com.google.inject.Key<?>,com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:459,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:458,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].bindingAlreadySet(com.google.inject.Binding<?>,com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionDepth: 7
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Binding<?>"
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError].<init>(com.google.inject.Binding,com.google.inject.Binding,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:463,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:463,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError].<init>(com.google.inject.Binding,com.google.inject.Binding,java.util.List)"
    - Src: "com.google.inject.internal.Errors:464,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:464,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError].<init>(com.google.inject.Binding,com.google.inject.Binding,java.util.List)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 25
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Binding"
    - "com.google.inject.Binding"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError:19,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:19,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:19,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.BindingAlreadySetError:17,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].bindingAlreadySet(com.google.inject.Key<?>,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:473,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:469,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].jitBindingAlreadySet(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:477,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].childBindingAlreadySet(com.google.inject.Key<?>,java.util.Set<Object>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 490
    functionDepth: 7
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "java.util.Set<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError].<init>(com.google.inject.Key,java.lang.Iterable,java.util.List)"
    - "[com.google.inject.internal.Errors].getSources()"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:488,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:488,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].<init>(com.google.inject.Key,java.lang.Iterable,java.util.List)"
    - Src: "com.google.inject.internal.Errors:488,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Errors:489,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].errorCheckingDuplicateBinding(com.google.inject.Key<?>,java.lang.Object,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<?>"
    - "java.lang.Object"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:498,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:493,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].requestInjectionWithDifferentTypes(java.lang.Object,com.google.inject.TypeLiteral<?>,java.lang.Object,com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.Object"
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:509,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.Errors:509,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.Errors:509,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:509,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    - Src: "com.google.inject.internal.Errors:504,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].errorNotifyingTypeListener(com.google.inject.spi.TypeListenerBinding,com.google.inject.TypeLiteral<?>,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 516
    functionLinenumberEnd: 522
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 3
    argTypes:
    - "com.google.inject.spi.TypeListenerBinding"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.TypeListenerBinding].getListener()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.inject.spi.TypeListenerBinding].getSource()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:520,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].getListener()"
    - Src: "com.google.inject.internal.Errors:521,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].getSource()"
    - Src: "com.google.inject.internal.Errors:521,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.Errors:517,1"
      Dst: "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].exposedButNotBound(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:527,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].keyNotFullySpecified(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 533
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:532,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].errorEnhancingClass(java.lang.Class<?>,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 540
    functionDepth: 10
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:539,1"
      Dst: "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].throwProvisionExceptionIfErrorsExist()"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:604"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:607"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Errors:606"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:604,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.internal.Errors:607,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.internal.Errors:607,1"
      Dst: "[com.google.inject.ProvisionException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].merge(java.util.Collection<Message>)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 617
    functionDepth: 1
    returnType: "com.google.inject.internal.Errors"
    argCount: 1
    argTypes:
    - "java.util.Collection<Message>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].getSources()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[com.google.inject.internal.Messages].mergeSources(java.util.List,com.google.inject.spi.Message)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 277
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Errors:613"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Errors:616"
        BranchSideFuncs:
        - "addMessage(com.google.inject.spi.Message)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "mergeSources(java.util.List,com.google.inject.spi.Message)"
      - BranchSide: "com.google.inject.internal.Errors:615"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:612,1"
      Dst: "[com.google.inject.internal.Errors].getSources()"
    - Src: "com.google.inject.internal.Errors:613,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.Errors:613,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.Errors:613,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.Errors:614,1"
      Dst: "[com.google.inject.internal.Messages].mergeSources(java.util.List,com.google.inject.spi.Message)"
    - Src: "com.google.inject.internal.Errors:614,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Errors].addMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "com.google.inject.internal.Errors"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:660,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.internal.ErrorId,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:710,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object,com.google.inject.spi.ElementSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Errors].formatSource(java.util.Formatter,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Errors"
    linkageType: ""
    functionLinenumber: 714
    functionLinenumberEnd: 718
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Formatter"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Errors:715,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Errors:716,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.Errors:716,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,boolean)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Method"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].forMember(com.google.inject.internal.Errors,java.lang.reflect.Member,com.google.inject.TypeLiteral,java.lang.reflect.AnnotatedType[],java.lang.'annotation'.Annotation[][],java.util.function.Predicate)"
    - "[java.lang.reflect.Executable].getAnnotatedParameterTypes()"
    - "[java.lang.reflect.Method].getParameterAnnotations()"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getIsParameterKotlinNullablePredicate(java.lang.reflect.Method)"
    - "[com.google.inject.internal.KotlinSupportInterface].getIsParameterKotlinNullablePredicate(java.lang.reflect.Method)"
    functionUses: 2
    ICount: 17
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:79,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:84,1"
      Dst: "[java.lang.reflect.Executable].getAnnotatedParameterTypes()"
    - Src: "com.google.inject.spi.InjectionPoint:85,1"
      Dst: "[java.lang.reflect.Method].getParameterAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:86,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.spi.InjectionPoint:86,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].getIsParameterKotlinNullablePredicate(java.lang.reflect.Method)"
    - Src: "com.google.inject.spi.InjectionPoint:80,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forMember(com.google.inject.internal.Errors,java.lang.reflect.Member,com.google.inject.TypeLiteral,java.lang.reflect.AnnotatedType[],java.lang.'annotation'.Annotation[][],java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].checkConstructorParameterAnnotations(java.lang.reflect.Constructor,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.inject.spi.InjectionPoint].forMember(com.google.inject.internal.Errors,java.lang.reflect.Member,com.google.inject.TypeLiteral,java.lang.reflect.AnnotatedType[],java.lang.'annotation'.Annotation[][],java.util.function.Predicate)"
    - "[java.lang.reflect.Executable].getAnnotatedParameterTypes()"
    - "[java.lang.reflect.Constructor].getParameterAnnotations()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getIsParameterKotlinNullablePredicate(java.lang.reflect.Constructor)"
    - "[com.google.inject.internal.KotlinSupportInterface].checkConstructorParameterAnnotations(java.lang.reflect.Constructor,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.KotlinSupportInterface].getIsParameterKotlinNullablePredicate(java.lang.reflect.Constructor)"
    functionUses: 3
    ICount: 18
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:89,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:93,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:94,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.spi.InjectionPoint:94,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].checkConstructorParameterAnnotations(java.lang.reflect.Constructor,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:101,1"
      Dst: "[java.lang.reflect.Executable].getAnnotatedParameterTypes()"
    - Src: "com.google.inject.spi.InjectionPoint:102,1"
      Dst: "[java.lang.reflect.Constructor].getParameterAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:103,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].getIsParameterKotlinNullablePredicate(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.spi.InjectionPoint:97,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forMember(com.google.inject.internal.Errors,java.lang.reflect.Member,com.google.inject.TypeLiteral,java.lang.reflect.AnnotatedType[],java.lang.'annotation'.Annotation[][],java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forMember(com.google.inject.internal.Errors,java.lang.reflect.Member,com.google.inject.TypeLiteral<?>,java.lang.reflect.AnnotatedType[],java.lang.annotation.Annotation[][],java.util.function.Predicate<Integer>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 161
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableList<Dependency<?>>"
    argCount: 6
    argTypes:
    - "com.google.inject.internal.Errors"
    - "java.lang.reflect.Member"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.reflect.AnnotatedType[]"
    - "java.lang.annotation.Annotation[][]"
    - "java.util.function.Predicate<Integer>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.Annotations].getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Nullability].hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].test(java.lang.Object)"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$contains__54].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingSequentialList$lambda_removeIf_0__33].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].test(java.lang.Object)"
    - "[jdk.internal.logger.SimpleConsoleLogger$CallerFinder].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].test(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_removeIf_1__70].test(java.lang.Object)"
    - "[com.google.common.base.Predicate].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList$lambda_removeIf_0__34].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$3$lambda_stream_0__28].test(java.lang.Object)"
    - "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_removeIf_2__69].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].test(java.lang.Object)"
    - "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$2$contains__29].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$1$lambda_stream_0__27].test(java.lang.Object)"
    - "[com.google.inject.internal.Messages$isMergeable__63].test(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].newDependency(com.google.inject.Key,boolean,int)"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - "[java.util.function.Predicate].test(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 44
    EdgeCount: 186
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:141"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:159"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
        - "iterator()"
        - "getParameterTypes(java.lang.reflect.Member)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:158"
        BranchSideFuncs:
        - "throwConfigurationExceptionIfErrorsExist()"
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.spi.InjectionPoint:147"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:149"
        BranchSideFuncs:
        - "hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
      - BranchSide: "com.google.inject.spi.InjectionPoint:148"
        BranchSideFuncs:
        - "test(java.lang.Object)"
        - "valueOf(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:148"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:149"
        BranchSideFuncs:
        - "test(java.lang.Object)"
        - "valueOf(int)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:148"
        BranchSideFuncs:
        - "test(java.lang.Object)"
        - "valueOf(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:149"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:149"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getErrorMessages()"
        - "merge(com.google.inject.internal.Errors)"
        - "newDependency(com.google.inject.Key,boolean,int)"
        - "getErrors()"
        - "merge(java.util.Collection)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:148"
        BranchSideFuncs:
        - "test(java.lang.Object)"
        - "valueOf(int)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:138,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.spi.InjectionPoint:141,1"
      Dst: "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - Src: "com.google.inject.spi.InjectionPoint:141,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.spi.InjectionPoint:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.InjectionPoint:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.InjectionPoint:143,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:145,1"
      Dst: "[com.google.inject.internal.Annotations].getKey(com.google.inject.TypeLiteral,java.lang.reflect.Member,java.lang.'annotation'.Annotation[],com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:147,1"
      Dst: "[com.google.inject.internal.Nullability].hasNullableAnnotation(java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.spi.InjectionPoint:149,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.spi.InjectionPoint:149,1"
      Dst: "[java.util.function.Predicate].test(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:150,1"
      Dst: "[com.google.inject.spi.InjectionPoint].newDependency(com.google.inject.Key,boolean,int)"
    - Src: "com.google.inject.spi.InjectionPoint:150,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:153,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:153,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.spi.InjectionPoint:155,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.spi.InjectionPoint:155,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:159,1"
      Dst: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - Src: "com.google.inject.spi.InjectionPoint:160,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.InjectionPoint].newDependency(com.google.inject.Key<T>,boolean,int)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "com.google.inject.spi.Dependency<T>"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<T>"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].<init>(com.google.inject.spi.InjectionPoint,com.google.inject.Key,boolean,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:165,1"
      Dst: "[com.google.inject.spi.Dependency].<init>(com.google.inject.spi.InjectionPoint,com.google.inject.Key,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].<init>(com.google.inject.spi.InjectionPoint,com.google.inject.Key,boolean,int)"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.Key"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Dependency:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.Dependency:47,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].isOptional()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    functionUses: 56
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:217"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:218"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:219"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:218,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:219,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint].hashCode()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].hashCode()"
    - "[com.google.inject.TypeLiteral].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    functionUses: 34
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:224,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.inject.spi.InjectionPoint:224,1"
      Dst: "[com.google.inject.TypeLiteral].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].toString()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.Classes].toString(java.lang.reflect.Member)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:229,1"
      Dst: "[com.google.inject.internal.util.Classes].toString(java.lang.reflect.Member)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forConstructor(java.lang.reflect.Constructor<T>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:241,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.spi.InjectionPoint:241,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:241,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forConstructor(java.lang.reflect.Constructor<T>,com.google.inject.TypeLiteral<?\
      \ extends T>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 260
    functionDepth: 3
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor<T>"
    - "com.google.inject.TypeLiteral<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.internal.Errors].constructorNotDefinedByType(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:253"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:259"
        BranchSideFuncs:
        - "throwConfigurationExceptionIfErrorsExist()"
        - "<init>(java.lang.Object)"
        - "constructorNotDefinedByType(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:258"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:253,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.InjectionPoint:253,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.spi.InjectionPoint:254,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:255,1"
      Dst: "[com.google.inject.internal.Errors].constructorNotDefinedByType(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:256,1"
      Dst: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - Src: "com.google.inject.spi.InjectionPoint:259,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:275,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral<?>,boolean)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 342
    functionDepth: 12
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].bootstrap$()"
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].bootstrap$()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].bootstrap$()"
    - "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].bootstrap$(com.google.inject.internal.Errors)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.inject.internal.Errors].tooManyConstructors(java.lang.Class)"
    - "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable,java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].atInjectRequired(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[java.lang.Class].getModifiers()"
    - "[com.google.inject.internal.Errors].missingConstructor(com.google.inject.TypeLiteral)"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 61
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:309"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:312"
        BranchSideFuncs:
        - "tooManyConstructors(java.lang.Class)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:311"
        BranchSideFuncs:
        - "getOnlyElement(java.lang.Iterable,java.lang.Object)"
    - Branch String: "com.google.inject.spi.InjectionPoint:313"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:317"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:316"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:317"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:320"
        BranchSideFuncs:
        - "atInjectRequired(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:319"
        BranchSideFuncs:
        - "throwConfigurationExceptionIfErrorsExist()"
    - Branch String: "com.google.inject.spi.InjectionPoint:317"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:320"
        BranchSideFuncs:
        - "atInjectRequired(com.google.inject.TypeLiteral)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:319"
        BranchSideFuncs:
        - "throwConfigurationExceptionIfErrorsExist()"
    - Branch String: "com.google.inject.spi.InjectionPoint:322"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:328"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:327"
        BranchSideFuncs:
        - "getDeclaredConstructor(java.lang.Class[])"
    - Branch String: "com.google.inject.spi.InjectionPoint:331"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:337"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPrivate(int)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:336"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    - Branch String: "com.google.inject.spi.InjectionPoint:332"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:337"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:336"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:295,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.spi.InjectionPoint:295,1"
      Dst: "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - Src: "com.google.inject.spi.InjectionPoint:296,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:299,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "com.google.inject.spi.InjectionPoint:299,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "com.google.inject.spi.InjectionPoint:299,1"
      Dst: "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].bootstrap$()"
    - Src: "com.google.inject.spi.InjectionPoint:300,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.spi.InjectionPoint:301,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.spi.InjectionPoint:301,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.spi.InjectionPoint:304,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.spi.InjectionPoint:304,1"
      Dst: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].bootstrap$()"
    - Src: "com.google.inject.spi.InjectionPoint:305,1"
      Dst: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].bootstrap$()"
    - Src: "com.google.inject.spi.InjectionPoint:307,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:307,1"
      Dst: "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].bootstrap$(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:307,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.spi.InjectionPoint:309,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.spi.InjectionPoint:310,1"
      Dst: "[com.google.inject.internal.Errors].tooManyConstructors(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:312,1"
      Dst: "[com.google.common.collect.Iterables].getOnlyElement(java.lang.Iterable,java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:314,1"
      Dst: "[com.google.inject.spi.InjectionPoint].checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:318,1"
      Dst: "[com.google.inject.internal.Errors].atInjectRequired(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:320,1"
      Dst: "[com.google.inject.internal.Errors].throwConfigurationExceptionIfErrorsExist()"
    - Src: "com.google.inject.spi.InjectionPoint:323,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Constructor)"
    - Src: "com.google.inject.spi.InjectionPoint:328,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "com.google.inject.spi.InjectionPoint:331,1"
      Dst: "[java.lang.reflect.Constructor].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:331,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    - Src: "com.google.inject.spi.InjectionPoint:332,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:333,1"
      Dst: "[com.google.inject.internal.Errors].missingConstructor(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:334,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:334,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].<init>()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].bootstrap$(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$optionalConstructor__120"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].<init>(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$optionalConstructor__120:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].<init>(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].<init>(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$optionalConstructor__120"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$optionalConstructor__120:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 457
    functionLinenumberEnd: 476
    functionDepth: 11
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Member"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - "[java.lang.Module].getAnnotations()"
    - "[java.lang.reflect.AccessibleObject].getAnnotations()"
    - "[com.google.common.reflect.Invokable].getAnnotations()"
    - "[com.google.common.reflect.Parameter].getAnnotations()"
    - "[java.lang.reflect.Parameter].getAnnotations()"
    - "[java.lang.Class].getAnnotations()"
    - "[java.lang.Package].getAnnotations()"
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getName()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.invoke.MemberName].getName()"
    - "[com.google.common.reflect.Invokable].getName()"
    - "[java.lang.reflect.Field].getName()"
    - "[com.google.inject.internal.Errors].misplacedBindingAnnotation(java.lang.reflect.Member,java.lang.'annotation'.Annotation)"
    - "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[java.lang.reflect.Member].getName()"
    functionUses: 3
    ICount: 18
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:459"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:465"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:464"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:465"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:473"
        BranchSideFuncs:
        - "misplacedBindingAnnotation(java.lang.reflect.Member,java.lang.'annotation'.Annotation)"
    - Branch String: "com.google.inject.spi.InjectionPoint:467"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:471"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:470"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:458,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - Src: "com.google.inject.spi.InjectionPoint:457,1"
      Dst: "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.spi.InjectionPoint:467,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.spi.InjectionPoint:467,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "com.google.inject.spi.InjectionPoint:467,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "com.google.inject.spi.InjectionPoint:474,1"
      Dst: "[com.google.inject.internal.Errors].misplacedBindingAnnotation(java.lang.reflect.Member,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].isInjectableConstructor(java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 348
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:346"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:346"
        BranchSideFuncs:
        - "isAnnotationPresent(java.lang.Class)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:345"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:347"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:346,1"
      Dst: "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.InjectionPoint].forConstructorOf(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:360,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:360,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forMethod(java.lang.reflect.Method,com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 2
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:372,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 402
    functionDepth: 2
    returnType: "java.util.Set<InjectionPoint>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.lang.Class].isInterface()"
    - "[com.google.inject.internal.Errors].staticInjectionOnInterface(java.lang.Class)"
    - "[com.google.inject.spi.InjectionPoint].getInjectionPoints(com.google.inject.TypeLiteral,boolean,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.ConfigurationException].withPartialValue(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:391"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:395"
        BranchSideFuncs:
        - "staticInjectionOnInterface(java.lang.Class)"
        - "getRawType()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:394"
        BranchSideFuncs:
        - "getInjectionPoints(com.google.inject.TypeLiteral,boolean,com.google.inject.internal.Errors)"
    - Branch String: "com.google.inject.spi.InjectionPoint:398"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:401"
        BranchSideFuncs:
        - "withPartialValue(java.lang.Object)"
        - "getMessages()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:387,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:391,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.InjectionPoint:391,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "com.google.inject.spi.InjectionPoint:392,1"
      Dst: "[com.google.inject.internal.Errors].staticInjectionOnInterface(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:395,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getInjectionPoints(com.google.inject.TypeLiteral,boolean,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:398,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.spi.InjectionPoint:399,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:399,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - Src: "com.google.inject.spi.InjectionPoint:399,1"
      Dst: "[com.google.inject.ConfigurationException].withPartialValue(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 415
    functionLinenumberEnd: 417
    functionDepth: 0
    returnType: "java.util.Set<InjectionPoint>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(com.google.inject.TypeLiteral)"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:416,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:416,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forStaticMethodsAndFields(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 437
    functionDepth: 2
    returnType: "java.util.Set<InjectionPoint>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.spi.InjectionPoint].getInjectionPoints(com.google.inject.TypeLiteral,boolean,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - "[com.google.inject.internal.Errors].getMessages()"
    - "[com.google.inject.ConfigurationException].withPartialValue(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:433"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:436"
        BranchSideFuncs:
        - "withPartialValue(java.lang.Object)"
        - "getMessages()"
        - "<init>(java.lang.Iterable)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:435"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:431,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:432,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getInjectionPoints(com.google.inject.TypeLiteral,boolean,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:433,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    - Src: "com.google.inject.spi.InjectionPoint:434,1"
      Dst: "[com.google.inject.internal.Errors].getMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:434,1"
      Dst: "[com.google.inject.ConfigurationException].<init>(java.lang.Iterable)"
    - Src: "com.google.inject.spi.InjectionPoint:434,1"
      Dst: "[com.google.inject.ConfigurationException].withPartialValue(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionDepth: 0
    returnType: "java.util.Set<InjectionPoint>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:451,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:451,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].getAtInject(java.lang.reflect.AnnotatedElement)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 539
    functionLinenumberEnd: 542
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.reflect.AnnotatedElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Parameter].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.AccessibleObject].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Field].getAnnotation(java.lang.Class)"
    - "[java.lang.Module].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Executable].getAnnotation(java.lang.Class)"
    - "[com.google.common.reflect.Parameter].getAnnotation(java.lang.Class)"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[java.lang.Package].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getAnnotation(java.lang.Class)"
    - "[java.lang.reflect.AnnotatedElement].getAnnotation(java.lang.Class)"
    functionUses: 2
    ICount: 7
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:541"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:539"
        BranchSideFuncs:
        - "getAnnotation(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:540,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].getInjectionPoints(com.google.inject.TypeLiteral<?>,boolean,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 701
    functionLinenumberEnd: 806
    functionDepth: 12
    returnType: "java.util.Set<InjectionPoint>"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    - "boolean"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$InjectableMembers].<init>()"
    - "[com.google.inject.spi.InjectionPoint].hierarchyFor(com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.base.Joiner$3].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.CartesianList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].size()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].size()"
    - "[java.util.LinkedList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].size()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[java.util.ArrayList].size()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].size()"
    - "[java.util.Vector].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[com.google.inject.spi.InjectionPoint].getDeclaredFields(com.google.inject.TypeLiteral)"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    - "[com.google.inject.spi.InjectionPoint].getAtInject(java.lang.reflect.AnnotatedElement)"
    - "[com.google.inject.spi.InjectionPoint$InjectableField].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
    - "[java.lang.reflect.Modifier].isFinal(int)"
    - "[com.google.inject.internal.Errors].cannotInjectFinalField(java.lang.reflect.Field)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMembers].add(com.google.inject.spi.InjectionPoint$InjectableMember)"
    - "[com.google.inject.spi.InjectionPoint].getDeclaredMethods(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.InjectionPoint].isEligibleForInjection(java.lang.reflect.Method,boolean)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMethod].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.spi.InjectionPoint].checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.InjectionPoint].isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex].removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex].<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex].add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMembers].isEmpty()"
    - "[java.util.Collections].emptySet()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMethod].toInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint$InjectableField].toInjectionPoint()"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMember].toInjectionPoint()"
    functionUses: 2
    ICount: 105
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:707"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:791"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:790"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "com.google.inject.spi.InjectionPoint:708"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:716"
        BranchSideFuncs:
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "get(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:708"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:716"
        BranchSideFuncs:
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "get(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:710"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:713"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:712"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:719"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:732"
        BranchSideFuncs:
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "isStatic(int)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:731"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.spi.InjectionPoint:720"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:717"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:716"
        BranchSideFuncs:
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "get(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:722"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:717"
        BranchSideFuncs:
        - "getModifiers()"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
        - "isFinal(int)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:716"
        BranchSideFuncs:
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "get(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:724"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:727"
        BranchSideFuncs:
        - "cannotInjectFinalField(java.lang.reflect.Field)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:726"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:724"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:727"
        BranchSideFuncs:
        - "cannotInjectFinalField(java.lang.reflect.Field)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:726"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:732"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:null"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
        - "isEligibleForInjection(java.lang.reflect.Method,boolean)"
    - Branch String: "com.google.inject.spi.InjectionPoint:733"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:732"
        BranchSideFuncs:
        - "getAtInject(java.lang.reflect.AnnotatedElement)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:731"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.spi.InjectionPoint:735"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:774"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:773"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:737"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:739"
        BranchSideFuncs:
        - "isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:738"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:738"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:755"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:754"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:739"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:732"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
        - "isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
        - "getModifiers()"
        - "removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
        - "builder()"
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
        - "cannotInjectFinalField(java.lang.reflect.Field)"
        - "<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Object)"
        - "getAtInject(java.lang.reflect.AnnotatedElement)"
        - "isEligibleForInjection(java.lang.reflect.Method,boolean)"
        - "toInjectionPoint()"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "emptySet()"
        - "isStatic(int)"
        - "isFinal(int)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:731"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.spi.InjectionPoint:742"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:752"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:751"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:755"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:758"
        BranchSideFuncs:
        - "add(com.google.inject.spi.InjectionPoint$InjectableMember)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:757"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:758"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:769"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
        - "isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
        - "getModifiers()"
        - "removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
        - "builder()"
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
        - "cannotInjectFinalField(java.lang.reflect.Field)"
        - "<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Object)"
        - "getAtInject(java.lang.reflect.AnnotatedElement)"
        - "isEligibleForInjection(java.lang.reflect.Method,boolean)"
        - "toInjectionPoint()"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "emptySet()"
        - "isStatic(int)"
        - "isFinal(int)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:768"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:774"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:732"
        BranchSideFuncs:
        - "removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:731"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.spi.InjectionPoint:776"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:732"
        BranchSideFuncs:
        - "log(java.util.logging.Level,java.lang.String,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:731"
        BranchSideFuncs:
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Branch String: "com.google.inject.spi.InjectionPoint:791"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:795"
        BranchSideFuncs:
        - "emptySet()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:794"
        BranchSideFuncs:
        - "builder()"
    - Branch String: "com.google.inject.spi.InjectionPoint:796"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:805"
        BranchSideFuncs:
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
        - "isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
        - "getModifiers()"
        - "removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
        - "builder()"
        - "getDeclaredFields(com.google.inject.TypeLiteral)"
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
        - "getDeclaredMethods(com.google.inject.TypeLiteral)"
        - "cannotInjectFinalField(java.lang.reflect.Field)"
        - "<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Object)"
        - "getAtInject(java.lang.reflect.AnnotatedElement)"
        - "isEligibleForInjection(java.lang.reflect.Method,boolean)"
        - "toInjectionPoint()"
        - "add(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "emptySet()"
        - "isStatic(int)"
        - "isFinal(int)"
        - "checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:804"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.spi.InjectionPoint:800"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:795"
        BranchSideFuncs:
        - "getErrorMessages()"
        - "merge(java.util.Collection)"
        - "add(java.lang.Object)"
        - "toInjectionPoint()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:794"
        BranchSideFuncs:
        - "builder()"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:702,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMembers].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:705,1"
      Dst: "[com.google.inject.spi.InjectionPoint].hierarchyFor(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:706,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.spi.InjectionPoint:717,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.spi.InjectionPoint:719,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaredFields(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:720,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:720,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "com.google.inject.spi.InjectionPoint:721,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getAtInject(java.lang.reflect.AnnotatedElement)"
    - Src: "com.google.inject.spi.InjectionPoint:723,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableField].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Field,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.spi.InjectionPoint:724,1"
      Dst: "[java.lang.reflect.Modifier].isFinal(int)"
    - Src: "com.google.inject.spi.InjectionPoint:725,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectFinalField(java.lang.reflect.Field)"
    - Src: "com.google.inject.spi.InjectionPoint:727,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMembers].add(com.google.inject.spi.InjectionPoint$InjectableMember)"
    - Src: "com.google.inject.spi.InjectionPoint:732,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaredMethods(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.InjectionPoint:733,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isEligibleForInjection(java.lang.reflect.Method,boolean)"
    - Src: "com.google.inject.spi.InjectionPoint:736,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMethod].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.spi.InjectionPoint:737,1"
      Dst: "[com.google.inject.spi.InjectionPoint].checkForMisplacedBindingAnnotations(java.lang.reflect.Member,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:738,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.spi.InjectionPoint:741,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex].removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
    - Src: "com.google.inject.spi.InjectionPoint:743,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:765,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex].<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
    - Src: "com.google.inject.spi.InjectionPoint:771,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex].add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
    - Src: "com.google.inject.spi.InjectionPoint:791,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMembers].isEmpty()"
    - Src: "com.google.inject.spi.InjectionPoint:792,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "com.google.inject.spi.InjectionPoint:795,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.spi.InjectionPoint:798,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMember].toInjectionPoint()"
    - Src: "com.google.inject.spi.InjectionPoint:798,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:801,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.spi.InjectionPoint:801,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.spi.InjectionPoint:805,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 47
    CyclomaticComplexity: 23
  - functionName: "[com.google.inject.spi.InjectionPoint].isEligibleForInjection(java.lang.reflect.Method,boolean)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 834
    functionLinenumberEnd: 838
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    - "[java.lang.reflect.Method].isBridge()"
    - "[java.lang.reflect.Method].isSynthetic()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:835"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-1"
        BranchSideFuncs:
        - "isBridge()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:836"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-1"
        BranchSideFuncs:
        - "isSynthetic()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:837"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:835,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:835,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "com.google.inject.spi.InjectionPoint:836,1"
      Dst: "[java.lang.reflect.Method].isBridge()"
    - Src: "com.google.inject.spi.InjectionPoint:837,1"
      Dst: "[java.lang.reflect.Method].isSynthetic()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMethod].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMethod"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 528
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.reflect.Method"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$InjectableMember].<init>(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableMethod:525,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMember].<init>(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].isValidMethod(com.google.inject.spi.InjectionPoint$InjectableMethod,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 840
    functionLinenumberEnd: 854
    functionDepth: 11
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint$InjectableMethod"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[com.google.inject.internal.Errors].cannotInjectAbstractMethod(java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].getTypeParameters()"
    - "[com.google.inject.internal.Errors].cannotInjectMethodWithTypeParameters(java.lang.reflect.Method)"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:842"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:853"
        BranchSideFuncs:
        - "isAbstract(int)"
        - "getModifiers()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:852"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:844"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:848"
        BranchSideFuncs:
        - "cannotInjectAbstractMethod(java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:847"
        BranchSideFuncs:
        - "getTypeParameters()"
    - Branch String: "com.google.inject.spi.InjectionPoint:848"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:853"
        BranchSideFuncs:
        - "cannotInjectMethodWithTypeParameters(java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.spi.InjectionPoint:852"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:844,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:844,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    - Src: "com.google.inject.spi.InjectionPoint:845,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectAbstractMethod(java.lang.reflect.Method)"
    - Src: "com.google.inject.spi.InjectionPoint:848,1"
      Dst: "[java.lang.reflect.Method].getTypeParameters()"
    - Src: "com.google.inject.spi.InjectionPoint:849,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectMethodWithTypeParameters(java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex].removeIfOverriddenBy(java.lang.reflect.Method,boolean,com.google.inject.spi.InjectionPoint$InjectableMethod)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex"
    linkageType: ""
    functionLinenumber: 616
    functionLinenumberEnd: 667
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Method"
    - "boolean"
    - "com.google.inject.spi.InjectionPoint$InjectableMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[com.google.inject.spi.InjectionPoint$InjectableMethod].isFinal()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].<init>(java.lang.reflect.Method)"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.InjectionPoint].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    - "[com.google.common.collect.TransformedIterator].remove()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].remove()"
    - "[com.google.common.collect.Iterators$PeekingImpl].remove()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].remove()"
    - "[com.google.common.collect.Iterators$7].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].remove()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].remove()"
    - "[com.google.common.collect.StandardTable$CellIterator].remove()"
    - "[com.google.common.collect.TreeMultiset$2].remove()"
    - "[com.google.common.cache.LocalCache$HashIterator].remove()"
    - "[com.google.common.collect.UnmodifiableIterator].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].remove()"
    - "[com.google.common.collect.HashBiMap$Itr].remove()"
    - "[com.google.common.collect.ForwardingIterator].remove()"
    - "[com.google.common.collect.AbstractBiMap$1].remove()"
    - "[com.google.common.collect.CompactHashSet$1].remove()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].remove()"
    - "[com.google.common.collect.StandardTable$Row$1].remove()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].remove()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].remove()"
    - "[com.google.common.collect.TreeMultiset$3].remove()"
    - "[com.google.common.base.Converter$1$1].remove()"
    - "[com.google.common.collect.CompactHashMap$Itr].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].remove()"
    - "[com.google.common.collect.EnumMultiset$Itr].remove()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].remove()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].remove()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].remove()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].remove()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].remove()"
    - "[com.google.common.collect.Lists$ReverseList$1].remove()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].remove()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].remove()"
    - "[com.google.common.collect.LinkedHashMultimap$1].remove()"
    - "[com.google.common.base.AbstractIterator].remove()"
    - "[com.google.common.collect.Iterables$6$1].remove()"
    - "[com.google.common.collect.Iterators$2].remove()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].remove()"
    - "[java.util.Iterator].remove()"
    - "[com.google.inject.spi.InjectionPoint$InjectableMembers].remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 70
    EdgeCount: 278
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:617"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:621"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:622"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:641"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Method)"
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:627"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:642"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:641"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Method)"
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:629"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:632"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:631"
        BranchSideFuncs:
        - "isFinal()"
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:633"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:636"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:635"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "<init>()"
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:646"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:666"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:665"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:647"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:666"
        BranchSideFuncs:
        - "overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
        - "next()"
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:665"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:649"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:664"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:663"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:650"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:650"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:652"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:658"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:657"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:658"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:659"
        BranchSideFuncs:
        - "remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "remove()"
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:658"
        BranchSideFuncs:
        - "remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "remove()"
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:658"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:664"
        BranchSideFuncs:
        - "remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
        - "remove()"
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:625,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:633,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMethod].isFinal()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:636,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:637,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:638,1"
      Dst: "[com.google.inject.spi.InjectionPoint$Signature].<init>(java.lang.reflect.Method)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:638,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:644,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:647,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:647,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:648,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:649,1"
      Dst: "[com.google.inject.spi.InjectionPoint].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:660,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:661,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMembers].remove(com.google.inject.spi.InjectionPoint$InjectableMember)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 26
    CyclomaticComplexity: 13
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMethod].isFinal()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMethod"
    linkageType: ""
    functionLinenumber: 534
    functionLinenumberEnd: 536
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isFinal(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableMethod:535,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint$InjectableMethod:535,1"
      Dst: "[java.lang.reflect.Modifier].isFinal(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Signature].<init>(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Signature"
    linkageType: ""
    functionLinenumber: 905
    functionLinenumberEnd: 917
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.String].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 3
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:912"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:914"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$Signature:906,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint$Signature:907,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.spi.InjectionPoint$Signature:908,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.spi.InjectionPoint$Signature:910,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "com.google.inject.spi.InjectionPoint$Signature:913,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].overrides(java.lang.reflect.Method,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 871
    functionLinenumberEnd: 881
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Method"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isProtected(int)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getPackage()"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:873"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:874"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:873"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint:873"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:876"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:875"
        BranchSideFuncs:
        - "isPrivate(int)"
    - Branch String: "com.google.inject.spi.InjectionPoint:876"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:880"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint:879"
        BranchSideFuncs:
        - "getPackage()"
        - "getDeclaringClass()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:872,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.spi.InjectionPoint:873,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "com.google.inject.spi.InjectionPoint:873,1"
      Dst: "[java.lang.reflect.Modifier].isProtected(int)"
    - Src: "com.google.inject.spi.InjectionPoint:876,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    - Src: "com.google.inject.spi.InjectionPoint:880,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.spi.InjectionPoint:880,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.spi.InjectionPoint:880,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex].<init>(com.google.inject.spi.InjectionPoint$InjectableMembers)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 598
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint$InjectableMembers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:595,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex].add(com.google.inject.spi.InjectionPoint$InjectableMethod)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex"
    linkageType: ""
    functionLinenumber: 673
    functionLinenumberEnd: 689
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint$InjectableMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$InjectableMembers].add(com.google.inject.spi.InjectionPoint$InjectableMember)"
    - "[com.google.inject.spi.InjectionPoint$InjectableMethod].isFinal()"
    - "[com.google.inject.spi.InjectionPoint$Signature].<init>(java.lang.reflect.Method)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].bootstrap$()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.concurrent.ConcurrentHashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.security.Provider].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Hashtable].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.concurrent.ConcurrentMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.cache.LocalCache].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.HashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Properties].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:675"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:676"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:675"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:678"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:679"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:687"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$OverrideIndex:683"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:685"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$OverrideIndex:684"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Method)"
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:674,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMembers].add(com.google.inject.spi.InjectionPoint$InjectableMember)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:675,1"
      Dst: "[com.google.inject.spi.InjectionPoint$InjectableMethod].isFinal()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:685,1"
      Dst: "[com.google.inject.spi.InjectionPoint$Signature].<init>(java.lang.reflect.Method)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:686,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].bootstrap$()"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:686,1"
      Dst: "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:686,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].<init>()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].getDeclaredFields(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 808
    functionLinenumberEnd: 810
    functionDepth: 1
    returnType: "java.lang.reflect.Field[]"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers].getDeclaredFields(java.lang.Class)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:809,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.InjectionPoint:809,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].getDeclaredFields(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].getDeclaredMethods(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 812
    functionLinenumberEnd: 814
    functionDepth: 1
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers].getDeclaredMethods(java.lang.Class)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:813,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.InjectionPoint:813,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].getDeclaredMethods(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint].hierarchyFor(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 856
    functionLinenumberEnd: 864
    functionDepth: 1
    returnType: "java.util.List<TypeLiteral<?>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Class].getSuperclass()"
    - "[com.google.inject.TypeLiteral].getSupertype(java.lang.Class)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint:859"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint:863"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getSupertype(java.lang.Class)"
        - "getSuperclass()"
        - "getRawType()"
      - BranchSide: "com.google.inject.spi.InjectionPoint:862"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:857,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.spi.InjectionPoint:859,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.InjectionPoint:860,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.InjectionPoint:861,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "com.google.inject.spi.InjectionPoint:861,1"
      Dst: "[com.google.inject.TypeLiteral].getSupertype(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$1(java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getAnnotation(java.lang.Class)"
    - "[com.google.inject.Inject].optional()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint:306,1"
      Dst: "[java.lang.reflect.Constructor].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.spi.InjectionPoint:306,1"
      Dst: "[com.google.inject.Inject].optional()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$clear__2].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$clear__2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$clear__2:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$clear__2].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$clear__2].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$clear__2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$clear__2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$clear__2].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$clear__2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.Element)"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$clear__2:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$2].<init>()"
    - "[com.google.inject.spi.ScopeBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProviderLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InterceptorBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.PrivateElementsImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeConverterBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProvisionListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.BindingImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.StaticInjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Message].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.MembersInjectorLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    functionUses: 2
    ICount: 5
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:210,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$2].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:210,1"
      Dst: "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:211,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Supplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].<init>()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].get()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$init__157:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2].visitOther(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 221
    functionDepth: 2
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].getSource()"
    - "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    - "[com.google.inject.spi.InjectionRequest].getSource()"
    - "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.MembersInjectorLookup].getSource()"
    - "[com.google.inject.spi.Message].getSource()"
    - "[com.google.inject.spi.DisableCircularProxiesOption].getSource()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].getSource()"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].getSource()"
    - "[com.google.inject.spi.ProvisionListenerBinding].getSource()"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].getSource()"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].getSource()"
    - "[com.google.inject.spi.ScopeBinding].getSource()"
    - "[com.google.inject.spi.TypeConverterBinding].getSource()"
    - "[com.google.inject.spi.InterceptorBinding].getSource()"
    - "[com.google.inject.spi.TypeListenerBinding].getSource()"
    - "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.ElementSource)"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 17
    ICount: 8
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction$2:217"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$2:220"
        BranchSideFuncs:
        - "clear(com.google.inject.spi.ElementSource)"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction$2:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:215,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:218,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.ElementSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 237
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].clear()"
    - "[com.google.inject.spi.ModuleSource].getPermitMap()"
    - "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMap].clear()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:232"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:236"
        BranchSideFuncs:
        - "getOriginalElementSource()"
        - "getPermitMap()"
        - "clear()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:235"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:233,1"
      Dst: "[com.google.inject.spi.ModuleSource].getPermitMap()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:233,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMap].clear()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:234,1"
      Dst: "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionDepth: 2
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].bootstrap$()"
    - "[com.google.common.collect.RegularImmutableAsList].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - "[java.util.concurrent.CopyOnWriteArrayList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].forEach(java.util.function.Consumer)"
    - "[java.util.Vector].forEach(java.util.function.Consumer)"
    - "[java.util.ArrayList].forEach(java.util.function.Consumer)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[com.google.inject.spi.PrivateElements].getElements()"
    functionUses: 1
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:225,1"
      Dst: "[com.google.inject.spi.PrivateElements].getElements()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:225,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].bootstrap$()"
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:225,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].bootstrap$()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2].lambda$visit$0(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.Element)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2:225,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].clear(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionDepth: 6
    returnType: "com.google.inject.internal.RealMultibinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:56,1"
      Dst: "[com.google.inject.internal.RealMultibinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder:57,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].<init>(com.google.inject.Binder,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.Errors].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].<init>(com.google.inject.Key)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.RealMultibinder:95,1"
      Dst: "[com.google.inject.internal.Errors].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "com.google.inject.internal.RealMultibinder:96,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].<init>(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].setOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Set<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:63,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMultibinder:63,1"
      Dst: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:64,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:114,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].collectionOfProvidersOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Collection<Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:70,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMultibinder:70,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:71,1"
      Dst: "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:72,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:105,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].collectionOfJakartaProvidersOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Collection<jakarta.inject.Provider<T>>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:79,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMultibinder:79,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealMultibinder:80,1"
      Dst: "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:81,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].setOfExtendsOf(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Set<? extends T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:86,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMultibinder:86,1"
      Dst: "[com.google.inject.util.Types].subtypeOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:87,1"
      Dst: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMultibinder:88,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 121
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetOfExtendsKey()"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfProvidersKey()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfJakartaProvidersKey()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 1
    ICount: 37
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder:102"
        BranchSideFuncs:
        - "getCollectionOfProvidersKey()"
        - "isInitialized()"
        - "<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
        - "getSetOfExtendsKey()"
        - "toProvider(com.google.inject.Provider)"
        - "'to'(com.google.inject.Key)"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
        - "getSetKey()"
        - "bind(com.google.inject.Key)"
        - "getCollectionOfJakartaProvidersKey()"
      - BranchSide: "com.google.inject.internal.RealMultibinder:101"
        BranchSideFuncs:
        - "isInitialized()"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder:102,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMultibinder:102,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMultibinder:106,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    - Src: "com.google.inject.internal.RealMultibinder:106,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder:106,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealMultibinder:107,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - Src: "com.google.inject.internal.RealMultibinder:108,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetOfExtendsKey()"
    - Src: "com.google.inject.internal.RealMultibinder:108,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMultibinder:111,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfProvidersKey()"
    - Src: "com.google.inject.internal.RealMultibinder:111,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealMultibinder:118,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfJakartaProvidersKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMultibinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].<init>(com.google.inject.internal.RealMultibinder$BindingSelection,java.util.function.Function)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].bootstrap$()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:221,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].bootstrap$()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:221,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BaseFactory].<init>(com.google.inject.internal.RealMultibinder$BindingSelection,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].<init>(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMultibinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].<init>(com.google.inject.internal.RealMultibinder$BindingSelection,java.util.function.Function)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].bootstrap$()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:344,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].bootstrap$()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:344,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BaseFactory].<init>(com.google.inject.internal.RealMultibinder$BindingSelection,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93:-1,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].<init>()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$3].<init>()"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$3"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ClassOwnership$1LocalClass].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$3:127,1"
      Dst: "[com.google.common.reflect.Types$ClassOwnership$1LocalClass].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations].<init>()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations].create()"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.annotation.Annotation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[com.google.inject.internal.UniqueAnnotations].create(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations:40,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "com.google.inject.internal.UniqueAnnotations:40,1"
      Dst: "[com.google.inject.internal.UniqueAnnotations].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UniqueAnnotations].create(int)"
    functionSourceFile: "com.google.inject.internal.UniqueAnnotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UniqueAnnotations$1].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UniqueAnnotations:44,1"
      Dst: "[com.google.inject.internal.UniqueAnnotations$1].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$EmptyModule].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$EmptyModule"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$EmptyModule:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$EmptyModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$EmptyModule"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalContext].getConstructionContext(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "com.google.inject.internal.ConstructionContext<T>"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.inject.internal.ConstructionContext].<init>()"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalContext:82"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalContext:86"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
      - BranchSide: "com.google.inject.internal.InternalContext:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InternalContext:81,1"
      Dst: "[java.util.IdentityHashMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.InternalContext:83,1"
      Dst: "[com.google.inject.internal.ConstructionContext].<init>()"
    - Src: "com.google.inject.internal.InternalContext:84,1"
      Dst: "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructionContext].<init>()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructionContext:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalContext].setDependency(com.google.inject.spi.Dependency<?>)"
    functionSourceFile: "com.google.inject.internal.InternalContext"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Dependency<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].<init>()"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].isAllDefaultMethods(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.reflect.Method].getDefaultValue()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:61"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:67"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:66"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:60"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:61,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.Annotations:63,1"
      Dst: "[java.lang.reflect.Method].getDefaultValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].generateAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].isAllDefaultMethods(java.lang.Class)"
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:88,1"
      Dst: "[com.google.inject.internal.Annotations].isAllDefaultMethods(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:87,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:89,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].annotationEquals(java.lang.Class,java.util.Map,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Arrays].deepEquals(java.lang.Object[],java.lang.Object[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:130"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:133"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:132"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:140"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations:139"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations:135"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:130,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:133,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.Annotations:134,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.Annotations:136,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.Annotations:136,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:135,1"
      Dst: "[java.util.Arrays].deepEquals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].annotationHashCode(java.lang.Class,java.util.Map)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].hashCode()"
    - "[java.util.Arrays].deepHashCode(java.lang.Object[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:147,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.Annotations:148,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.Annotations:149,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations:150,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "com.google.inject.internal.Annotations:150,1"
      Dst: "[java.util.Arrays].deepHashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].annotationToString(java.lang.Class,java.util.Map)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.inject.internal.Annotations$lambda_annotationToString_0__213].bootstrap$()"
    - "[com.google.common.collect.Maps].transformValues(java.util.Map,com.google.common.base.Function)"
    - "[com.google.common.base.Joiner$MapJoiner].appendTo(java.lang.StringBuilder,java.util.Map)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:160,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.Annotations:160,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.Annotations:160,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.Annotations:160,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.Annotations:161,1"
      Dst: "[com.google.inject.internal.Annotations$lambda_annotationToString_0__213].bootstrap$()"
    - Src: "com.google.inject.internal.Annotations:163,1"
      Dst: "[com.google.common.collect.Maps].transformValues(java.util.Map,com.google.common.base.Function)"
    - Src: "com.google.inject.internal.Annotations:161,1"
      Dst: "[com.google.common.base.Joiner$MapJoiner].appendTo(java.lang.StringBuilder,java.util.Map)"
    - Src: "com.google.inject.internal.Annotations:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].isRetainedAtRuntime(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[java.lang.annotation.Retention].value()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:175"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:173"
        BranchSideFuncs:
        - "getAnnotation(java.lang.Class)"
    - Branch String: "com.google.inject.internal.Annotations:175"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:173"
        BranchSideFuncs:
        - "getAnnotation(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.internal.Annotations:174,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:175,1"
      Dst: "[java.lang.annotation.Retention].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.Annotations].memberValueString(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:234"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:233"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:234,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Annotations].determineAnnotationToStringConfig()"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "com.google.inject.internal.Annotations$AnnotationToStringConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[com.google.inject.internal.Annotations$AnnotationToStringConfig].<init>(boolean,boolean,boolean)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.Object].toString()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:302,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "com.google.inject.internal.Annotations:303,1"
      Dst: "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.Annotations:304,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.internal.Annotations:305,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.Annotations:308,1"
      Dst: "[com.google.inject.internal.Annotations$AnnotationToStringConfig].<init>(boolean,boolean,boolean)"
    - Src: "com.google.inject.internal.Annotations:310,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$AnnotationToStringConfig].<init>(boolean,boolean,boolean)"
    functionSourceFile: "com.google.inject.internal.Annotations$AnnotationToStringConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$AnnotationToStringConfig:219,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations:434"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations:437"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations].lambda$annotationToString$0(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Annotations"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].deepToString(java.lang.Object[])"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations:166,1"
      Dst: "[java.util.Arrays].deepToString(java.lang.Object[])"
    - Src: "com.google.inject.internal.Annotations:167,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.Annotations:167,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194:-1,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].<init>()"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MethodAspect].fromBinding(com.google.inject.spi.InterceptorBinding)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$fromBinding__194:-1,1"
      Dst: "[com.google.inject.internal.MethodAspect].fromBinding(com.google.inject.spi.InterceptorBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MethodAspect].fromBinding(com.google.inject.spi.InterceptorBinding)"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "com.google.inject.internal.MethodAspect"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InterceptorBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,java.util.List)"
    - "[com.google.inject.spi.InterceptorBinding].getClassMatcher()"
    - "[com.google.inject.spi.InterceptorBinding].getInterceptors()"
    - "[com.google.inject.spi.InterceptorBinding].getMethodMatcher()"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MethodAspect:41,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].getClassMatcher()"
    - Src: "com.google.inject.internal.MethodAspect:41,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].getMethodMatcher()"
    - Src: "com.google.inject.internal.MethodAspect:41,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].getInterceptors()"
    - Src: "com.google.inject.internal.MethodAspect:41,1"
      Dst: "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].getClassMatcher()"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].getMethodMatcher()"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].getInterceptors()"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MethodAspect:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MethodAspect:55,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ClassDefiner].<init>()"
    functionSourceFile: "jdk.internal.reflect.ClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ClassDefiner:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ClassDefiner].defineClass(java.lang.String,byte[],int,int,java.lang.ClassLoader)"
    functionSourceFile: "jdk.internal.reflect.ClassDefiner"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "int"
    - "int"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ClassDefiner$1].<init>(java.lang.ClassLoader)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[jdk.internal.reflect.ClassDefiner$1].run()"
    - "[jdk.internal.misc.Unsafe].defineClass(java.lang.String,byte[],int,int,java.lang.ClassLoader,java.security.ProtectionDomain)"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ClassDefiner:57,1"
      Dst: "[jdk.internal.reflect.ClassDefiner$1].<init>(java.lang.ClassLoader)"
    - Src: "jdk.internal.reflect.ClassDefiner:57,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "jdk.internal.reflect.ClassDefiner:63,1"
      Dst: "[jdk.internal.misc.Unsafe].defineClass(java.lang.String,byte[],int,int,java.lang.ClassLoader,java.security.ProtectionDomain)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ClassDefiner$1].<init>(java.lang.ClassLoader)"
    functionSourceFile: "jdk.internal.reflect.ClassDefiner$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ClassDefiner$1:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].<init>()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getMissingImplementationSuggestion(com.google.inject.internal.GuiceInternal,com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.util.Optional<String>"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.GuiceInternal"
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction].getRestriction(com.google.inject.Key)"
    - "[java.util.Optional].empty()"
    - "[java.util.Optional].of(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.RestrictedBindingSource].explanation()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:67"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:70"
        BranchSideFuncs:
        - "empty()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:69"
        BranchSideFuncs:
        - "of(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:65,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:66,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getRestriction(com.google.inject.Key)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:68,1"
      Dst: "[java.util.Optional].empty()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:74,1"
      Dst: "[com.google.inject.RestrictedBindingSource].explanation()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:71,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.spi.BindingSourceRestriction:70,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.internal.GuiceInternal,java.util.List<Element>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionDepth: 2
    returnType: "com.google.common.collect.ImmutableList<Message>"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.GuiceInternal"
    - "java.util.List<Element>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction].check(java.util.List)"
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].bootstrap$()"
    - "[com.google.common.collect.RegularImmutableAsList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    functionUses: 1
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:93,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:94,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].check(java.util.List)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:96,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$clear__2].bootstrap$()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:96,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].check(java.util.List<Element>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "com.google.common.collect.ImmutableList<Message>"
    argCount: 1
    argTypes:
    - "java.util.List<Element>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.spi.Element)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 12
    EdgeCount: 128
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:102"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:105"
        BranchSideFuncs:
        - "hasNext()"
        - "addAll(java.lang.Iterable)"
        - "iterator()"
        - "check(com.google.inject.spi.Element)"
        - "next()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:104"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:101,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:102,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:103,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.spi.Element)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:103,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:105,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableList<Message>"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$1].<init>()"
    - "[com.google.inject.spi.ScopeBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProviderLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InterceptorBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.InjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.PrivateElementsImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeConverterBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ProvisionListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.TypeListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.internal.BindingImpl].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.StaticInjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Message].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.MembersInjectorLookup].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    - "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    functionUses: 1
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:109,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$1].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:109,1"
      Dst: "[com.google.inject.spi.Element].acceptVisitor(com.google.inject.spi.ElementVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].check(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 158
    functionDepth: 6
    returnType: "java.util.Optional<Message>"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.BindingSourceRestriction].getRestriction(com.google.inject.Key)"
    - "[java.util.Optional].empty()"
    - "[com.google.inject.spi.BindingSourceRestriction].getAllPermits(com.google.inject.spi.ElementSource)"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Object[])"
    - "[com.google.inject.spi.BindingSourceRestriction$contains__54].bootstrap$(com.google.common.collect.ImmutableSet)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.spi.BindingSourceRestriction].isExempt(com.google.inject.spi.ElementSource,java.lang.String)"
    - "[com.google.inject.spi.BindingSourceRestriction].getViolationMessage(com.google.inject.Key,java.lang.String,com.google.common.collect.ImmutableSet,boolean)"
    - "[com.google.inject.Key].getAnnotationType()"
    - "[java.util.Formatter].<init>()"
    - "[com.google.inject.internal.Errors].formatSource(java.util.Formatter,java.lang.Object)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String)"
    - "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    - "[java.util.Optional].of(java.lang.Object)"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.spi.Element].getSource()"
    - "[com.google.inject.RestrictedBindingSource].permits()"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - "[com.google.inject.RestrictedBindingSource].exemptModules()"
    - "[com.google.inject.RestrictedBindingSource].explanation()"
    - "[com.google.inject.RestrictedBindingSource].restrictionLevel()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.util.Formatter)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:138"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:141"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:140"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[])"
        - "requireNonNull(java.lang.Object)"
        - "getAllPermits(com.google.inject.spi.ElementSource)"
        - "isExempt(com.google.inject.spi.ElementSource,java.lang.String)"
        - "bootstrap$(com.google.common.collect.ImmutableSet)"
        - "stream()"
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:145"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:146"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:145"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:145"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:150"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:149"
        BranchSideFuncs:
        - "getAnnotationType()"
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:150"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:149"
        BranchSideFuncs:
        - "getAnnotationType()"
        - "getViolationMessage(com.google.inject.Key,java.lang.String,com.google.common.collect.ImmutableSet,boolean)"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:148"
        BranchSideFuncs:
        - "getAnnotationType()"
        - "getViolationMessage(com.google.inject.Key,java.lang.String,com.google.common.collect.ImmutableSet,boolean)"
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:151"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:157"
        BranchSideFuncs:
        - "formatSource(java.util.Formatter,java.lang.Object)"
        - "log(java.util.logging.Level,java.lang.String)"
        - "<init>()"
        - "empty()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:156"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.lang.String)"
        - "of(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:134,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:136,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:137,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getRestriction(com.google.inject.Key)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:139,1"
      Dst: "[java.util.Optional].empty()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:141,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getAllPermits(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:143,1"
      Dst: "[com.google.inject.RestrictedBindingSource].permits()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:143,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.lang.Object[])"
    - Src: "com.google.inject.spi.BindingSourceRestriction:144,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:144,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:144,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$contains__54].bootstrap$(com.google.common.collect.ImmutableSet)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:144,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:145,1"
      Dst: "[com.google.inject.RestrictedBindingSource].exemptModules()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:145,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].isExempt(com.google.inject.spi.ElementSource,java.lang.String)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:150,1"
      Dst: "[com.google.inject.RestrictedBindingSource].explanation()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:150,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:149,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getViolationMessage(com.google.inject.Key,java.lang.String,com.google.common.collect.ImmutableSet,boolean)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:151,1"
      Dst: "[com.google.inject.RestrictedBindingSource].restrictionLevel()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:152,1"
      Dst: "[java.util.Formatter].<init>()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:153,1"
      Dst: "[com.google.inject.internal.Errors].formatSource(java.util.Formatter,java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:154,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.util.Formatter)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:154,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:157,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.Object,java.lang.String)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:157,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getAllPermits(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "com.google.common.collect.ImmutableSet<Class<? extends Annotation>>"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.inject.spi.ModuleSource].getPermitMap()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].getPermits(com.google.inject.spi.ElementSource)"
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].bootstrap$(com.google.common.collect.ImmutableSet$Builder)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.BindingSourceRestriction].getPermits(java.lang.Class)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - "[com.google.inject.spi.BindingSourceRestriction].getAllPermits(com.google.inject.spi.ElementSource)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMap].getPermits(com.google.inject.spi.ElementSource)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 2
    ICount: 23
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:180"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:183"
        BranchSideFuncs:
        - "getPermits(java.lang.Class)"
        - "bootstrap$(com.google.common.collect.ImmutableSet$Builder)"
        - "requireNonNull(java.lang.Object)"
        - "getClass()"
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:182"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:183"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:186"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:183"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:186"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:178,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:179,1"
      Dst: "[com.google.inject.spi.ModuleSource].getPermitMap()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:179,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMap].getPermits(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:179,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:181,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:181,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getPermits(java.lang.Class)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:181,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:181,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$add__57].bootstrap$(com.google.common.collect.ImmutableSet$Builder)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:181,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:183,1"
      Dst: "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:185,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getAllPermits(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:187,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$add__57].bootstrap$(com.google.common.collect.ImmutableSet$Builder)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$add__57"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableSet$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].<init>(com.google.common.collect.ImmutableSet$Builder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$add__57:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$add__57].<init>(com.google.common.collect.ImmutableSet$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$add__57].<init>(com.google.common.collect.ImmutableSet$Builder)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$add__57"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.collect.ImmutableSet$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$add__57:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].isExempt(com.google.inject.spi.ElementSource,java.lang.String)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.ElementSource"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].bootstrap$(java.util.regex.Pattern)"
    - "[com.google.inject.spi.BindingSourceRestriction].getAllModules(com.google.inject.spi.ElementSource)"
    - "[com.google.common.collect.Iterables$7].spliterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].spliterator()"
    - "[com.google.common.collect.CompactHashSet].spliterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].spliterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].spliterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].spliterator()"
    - "[java.util.PriorityQueue].spliterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].spliterator()"
    - "[com.google.common.collect.ImmutableMapValues].spliterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].spliterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].spliterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].spliterator()"
    - "[com.google.common.collect.ImmutableList].spliterator()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].spliterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].spliterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].spliterator()"
    - "[com.google.common.collect.CompactLinkedHashMap$1EntrySetImpl].spliterator()"
    - "[com.google.common.collect.ImmutableSortedSet].spliterator()"
    - "[java.util.TreeSet].spliterator()"
    - "[com.google.common.collect.CompactLinkedHashMap$1ValuesImpl].spliterator()"
    - "[com.google.common.collect.IndexedImmutableSet].spliterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].spliterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].spliterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].spliterator()"
    - "[java.util.Collection].spliterator()"
    - "[com.google.common.collect.SingletonImmutableList].spliterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].spliterator()"
    - "[java.util.ArrayList].spliterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].spliterator()"
    - "[com.google.common.collect.ImmutableSortedAsList].spliterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].spliterator()"
    - "[java.lang.Iterable].spliterator()"
    - "[com.google.common.collect.Iterables$4].spliterator()"
    - "[java.util.TreeMap$KeySet].spliterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].spliterator()"
    - "[com.google.common.collect.Multimaps$Keys].spliterator()"
    - "[java.util.SortedSet].spliterator()"
    - "[com.google.common.collect.Iterables$6].spliterator()"
    - "[com.google.common.collect.AbstractTable$Values].spliterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].spliterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].spliterator()"
    - "[java.util.TreeMap$EntrySet].spliterator()"
    - "[com.google.common.collect.CompactLinkedHashSet].spliterator()"
    - "[java.util.LinkedList].spliterator()"
    - "[com.google.common.collect.CompactLinkedHashMap$1KeySetImpl].spliterator()"
    - "[java.util.List].spliterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].spliterator()"
    - "[com.google.common.collect.Iterables$1].spliterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].spliterator()"
    - "[java.util.Vector].spliterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].spliterator()"
    - "[com.google.common.collect.RegularImmutableSet].spliterator()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].spliterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].spliterator()"
    - "[com.google.common.collect.Multiset].spliterator()"
    - "[java.util.LinkedHashSet].spliterator()"
    - "[com.google.common.collect.ImmutableCollection].spliterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].spliterator()"
    - "[java.util.concurrent.SynchronousQueue].spliterator()"
    - "[java.util.HashSet].spliterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].spliterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].spliterator()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].spliterator()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].spliterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].spliterator()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].spliterator()"
    - "[java.util.ArrayDeque].spliterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].spliterator()"
    - "[java.util.Set].spliterator()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].spliterator()"
    - "[com.google.common.collect.ImmutableEnumSet].spliterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].spliterator()"
    - "[com.google.common.collect.RegularImmutableList].spliterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].spliterator()"
    - "[com.google.common.collect.Iterables$5].spliterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].spliterator()"
    - "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 1
    ICount: 12
    EdgeCount: 81
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:191"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:194"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:193"
        BranchSideFuncs:
        - "stream(java.util.Spliterator,boolean)"
        - "compile(java.lang.String)"
        - "spliterator()"
        - "getAllModules(com.google.inject.spi.ElementSource)"
        - "bootstrap$(java.util.regex.Pattern)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:191,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:194,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:196,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getAllModules(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:196,1"
      Dst: "[java.lang.Iterable].spliterator()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:196,1"
      Dst: "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:196,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].bootstrap$(java.util.regex.Pattern)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:197,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getAllModules(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 207
    functionDepth: 2
    returnType: "java.lang.Iterable<String>"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ElementSource].getModuleClassNames()"
    - "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - "[com.google.common.collect.Iterables].concat(java.lang.Iterable,java.lang.Iterable)"
    - "[com.google.inject.spi.BindingSourceRestriction].getAllModules(com.google.inject.spi.ElementSource)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:202"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:203"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:202"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:205"
        BranchSideFuncs:
        - "concat(java.lang.Iterable,java.lang.Iterable)"
        - "getOriginalElementSource()"
        - "getAllModules(com.google.inject.spi.ElementSource)"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:201,1"
      Dst: "[com.google.inject.spi.ElementSource].getModuleClassNames()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:202,1"
      Dst: "[com.google.inject.spi.ElementSource].getOriginalElementSource()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:206,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getAllModules(com.google.inject.spi.ElementSource)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:206,1"
      Dst: "[com.google.common.collect.Iterables].concat(java.lang.Iterable,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getViolationMessage(com.google.inject.Key<?>,java.lang.String,com.google.common.collect.ImmutableSet<Class<?\
      \ extends Annotation>>,boolean)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "com.google.inject.Key<?>"
    - "java.lang.String"
    - "com.google.common.collect.ImmutableSet<Class<? extends Annotation>>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].bootstrap$()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:171"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:164"
        BranchSideFuncs:
        - "toList()"
        - "bootstrap$()"
        - "format(java.lang.String,java.lang.Object[])"
        - "stream()"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].bootstrap$()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:170,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:165,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getRestriction(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionDepth: 1
    returnType: "com.google.inject.RestrictedBindingSource"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getAnnotationType()"
    - "[java.lang.Class].getAnnotation(java.lang.Class)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    functionUses: 2
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:245"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:null"
        BranchSideFuncs:
        - "getTypeLiteral()"
        - "getRawType()"
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:245,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:246,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:246,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:246,1"
      Dst: "[java.lang.Class].getAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.BindingSourceRestriction].getPermits(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 351
    functionDepth: 2
    returnType: "java.util.stream.Stream<Class<? extends Annotation>>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getAnnotations()"
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[java.lang.Class].getAnnotatedSuperclass()"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].bootstrap$()"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].bootstrap$()"
    - "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    functionUses: 2
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.inject.spi.BindingSourceRestriction:343"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.BindingSourceRestriction:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction:341,1"
      Dst: "[java.lang.Class].getAnnotations()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:341,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "com.google.inject.spi.BindingSourceRestriction:343,1"
      Dst: "[java.lang.Class].getAnnotatedSuperclass()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:346,1"
      Dst: "[java.lang.reflect.AnnotatedElement].getAnnotations()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:345,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:348,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].bootstrap$()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:349,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.spi.BindingSourceRestriction:349,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].bootstrap$()"
    - Src: "com.google.inject.spi.BindingSourceRestriction:350,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].lambda$createJustInTimeBinding$0(com.google.inject.internal.Errors,com.google.inject.internal.CreationListener)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$lambda_createJustInTimeBinding_0__159:-1,1"
      Dst: "[com.google.inject.internal.InjectorImpl].lambda$createJustInTimeBinding$0(com.google.inject.internal.Errors,com.google.inject.internal.CreationListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$1(java.lang.reflect.Constructor)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint].lambda$forConstructorOf$1(java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl$1].<init>()"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl$1:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 12
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl$1:40,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$trimSource$3(java.lang.Object)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$trimSource$3(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$1].create(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 4
    returnType: "com.google.inject.internal.ConstructorInjector"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjectorStore].createConstructor(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$1:37,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore].createConstructor(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore].createConstructor(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "com.google.inject.internal.ConstructorInjector<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].getInterceptorBindings()"
    - "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].bootstrap$()"
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.Lists].transform(java.util.List,com.google.common.base.Function)"
    - "[com.google.inject.internal.MembersInjectorImpl].getAddedAspects()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.inject.internal.ProxyFactory].<init>(com.google.inject.spi.InjectionPoint,java.lang.Iterable)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.internal.MembersInjectorImpl].getInjectionPoints()"
    - "[com.google.inject.internal.ConstructorInjector].<init>(java.util.Set,com.google.inject.internal.ConstructionProxy,com.google.inject.internal.SingleParameterInjector[],com.google.inject.internal.MembersInjectorImpl)"
    - "[com.google.inject.internal.ProxyFactory].create()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    - "[com.google.inject.internal.ConstructionProxyFactory].create()"
    functionUses: 1
    ICount: 36
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorInjectorStore:81"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjectorStore:90"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.InjectionPoint)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore:71,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:74,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:74,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:79,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:79,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:81,1"
      Dst: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:83,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:83,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getInterceptorBindings()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:85,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:85,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].bootstrap$()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:86,1"
      Dst: "[com.google.common.collect.Lists].transform(java.util.List,com.google.common.base.Function)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:86,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:87,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].getAddedAspects()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:88,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:89,1"
      Dst: "[com.google.inject.internal.ProxyFactory].<init>(com.google.inject.spi.InjectionPoint,java.lang.Iterable)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:91,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:94,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:97,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].getInjectionPoints()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:98,1"
      Dst: "[com.google.inject.internal.ConstructionProxyFactory].create()"
    - Src: "com.google.inject.internal.ConstructorInjectorStore:98,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].<init>(java.util.Set,com.google.inject.internal.ConstructionProxy,com.google.inject.internal.SingleParameterInjector[],com.google.inject.internal.MembersInjectorImpl)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].getAddedAspects()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:187"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:186"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:187,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProxyFactory].<init>(com.google.inject.spi.InjectionPoint,java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.ProxyFactory"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 136
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.MethodAspect].matches(java.lang.Class)"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.ImmutableSet$CachingAsList:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.nio.file.Path:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.ServiceLoader:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.SynchronousQueue].add(java.lang.Object)"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.common.collect.ImmutableMap].of()"
    - "[com.google.inject.internal.BytecodeGen].enhancerBuilder(java.lang.Class)"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl].getEnhanceableMethods()"
    - "[com.google.common.collect.ArrayListMultimap].create()"
    - "[java.util.BitSet].<init>()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.inject.internal.MethodAspect].matches(java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].isSynthetic()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.MethodAspect].interceptors()"
    - "[com.google.common.collect.ArrayListMultimap].putAll(java.lang.Object,java.lang.Iterable)"
    - "[java.util.BitSet].set(int)"
    - "[java.util.BitSet].isEmpty()"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl].buildEnhancer(java.util.BitSet)"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.Errors].errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[java.util.BitSet].cardinality()"
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[java.util.BitSet].nextSetBit(int)"
    - "[com.google.common.collect.SingletonImmutableSet].asList()"
    - "[com.google.common.collect.EmptyContiguousSet].asList()"
    - "[com.google.common.collect.ImmutableSortedSet].asList()"
    - "[com.google.common.collect.ImmutableCollection].asList()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].asList()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[com.google.common.collect.ArrayListMultimap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen].superMethod(java.util.function.Function,java.lang.reflect.Method)"
    - "[com.google.inject.internal.InterceptorStackCallback].<init>(java.lang.reflect.Method,java.util.List,java.util.function.BiFunction)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[com.google.inject.internal.BytecodeGen$EnhancerBuilder].getEnhanceableMethods()"
    - "[java.util.List].iterator()"
    - "[com.google.common.collect.Multimap].putAll(java.lang.Object,java.lang.Iterable)"
    - "[com.google.inject.internal.BytecodeGen$EnhancerBuilder].buildEnhancer(java.util.BitSet)"
    - "[com.google.common.collect.Multimap].get(java.lang.Object)"
    functionUses: 1
    ICount: 97
    EdgeCount: 420
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProxyFactory:61"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:67"
        BranchSideFuncs:
        - "matches(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ProxyFactory:66"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProxyFactory:62"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:65"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProxyFactory:64"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProxyFactory:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:74"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProxyFactory:73"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "enhancerBuilder(java.lang.Class)"
        - "getEnhanceableMethods()"
        - "iterator()"
        - "create()"
    - Branch String: "com.google.inject.internal.ProxyFactory:83"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:102"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.ProxyFactory:101"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "com.google.inject.internal.ProxyFactory:84"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:100"
        BranchSideFuncs:
        - "matches(java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.internal.ProxyFactory:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProxyFactory:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:83"
        BranchSideFuncs:
        - "isSynthetic()"
      - BranchSide: "com.google.inject.internal.ProxyFactory:82"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "com.google.inject.internal.ProxyFactory:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:96"
        BranchSideFuncs:
        - "hasNext()"
        - "putAll(java.lang.Object,java.lang.Iterable)"
        - "errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
        - "next()"
        - "interceptors()"
        - "<init>()"
        - "enhancerBuilder(java.lang.Class)"
        - "isEmpty()"
        - "getEnhanceableMethods()"
        - "of()"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Object[])"
        - "buildEnhancer(java.util.BitSet)"
        - "matches(java.lang.reflect.Method)"
        - "isSynthetic()"
        - "set(int)"
        - "iterator()"
        - "toException()"
        - "create()"
      - BranchSide: "com.google.inject.internal.ProxyFactory:95"
        BranchSideFuncs:
        - "putAll(java.lang.Object,java.lang.Iterable)"
        - "interceptors()"
        - "set(int)"
    - Branch String: "com.google.inject.internal.ProxyFactory:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:110"
        BranchSideFuncs:
        - "of()"
      - BranchSide: "com.google.inject.internal.ProxyFactory:109"
        BranchSideFuncs:
        - "errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
        - "<init>()"
        - "buildEnhancer(java.util.BitSet)"
        - "toException()"
    - Branch String: "com.google.inject.internal.ProxyFactory:122"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:133"
        BranchSideFuncs:
        - "buildOrThrow()"
    Callsites:
    - Src: "com.google.inject.internal.ProxyFactory:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProxyFactory:57,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ProxyFactory:57,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.ProxyFactory:60,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.ProxyFactory:61,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.internal.ProxyFactory:61,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProxyFactory:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProxyFactory:62,1"
      Dst: "[com.google.inject.internal.MethodAspect].matches(java.lang.Class)"
    - Src: "com.google.inject.internal.ProxyFactory:63,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ProxyFactory:67,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.ProxyFactory:69,1"
      Dst: "[com.google.common.collect.ImmutableMap].of()"
    - Src: "com.google.inject.internal.ProxyFactory:74,1"
      Dst: "[com.google.inject.internal.BytecodeGen].enhancerBuilder(java.lang.Class)"
    - Src: "com.google.inject.internal.ProxyFactory:76,1"
      Dst: "[com.google.inject.internal.BytecodeGen$EnhancerBuilder].getEnhanceableMethods()"
    - Src: "com.google.inject.internal.ProxyFactory:79,1"
      Dst: "[com.google.common.collect.ArrayListMultimap].create()"
    - Src: "com.google.inject.internal.ProxyFactory:80,1"
      Dst: "[java.util.BitSet].<init>()"
    - Src: "com.google.inject.internal.ProxyFactory:83,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProxyFactory:86,1"
      Dst: "[com.google.inject.internal.MethodAspect].matches(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProxyFactory:87,1"
      Dst: "[java.lang.reflect.Method].isSynthetic()"
    - Src: "com.google.inject.internal.ProxyFactory:93,1"
      Dst: "[com.google.inject.internal.MethodAspect].interceptors()"
    - Src: "com.google.inject.internal.ProxyFactory:88,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ProxyFactory:96,1"
      Dst: "[com.google.common.collect.Multimap].putAll(java.lang.Object,java.lang.Iterable)"
    - Src: "com.google.inject.internal.ProxyFactory:97,1"
      Dst: "[java.util.BitSet].set(int)"
    - Src: "com.google.inject.internal.ProxyFactory:102,1"
      Dst: "[java.util.BitSet].isEmpty()"
    - Src: "com.google.inject.internal.ProxyFactory:110,1"
      Dst: "[com.google.inject.internal.BytecodeGen$EnhancerBuilder].buildEnhancer(java.util.BitSet)"
    - Src: "com.google.inject.internal.ProxyFactory:112,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.ProxyFactory:112,1"
      Dst: "[com.google.inject.internal.Errors].errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
    - Src: "com.google.inject.internal.ProxyFactory:112,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.ProxyFactory:115,1"
      Dst: "[java.util.BitSet].cardinality()"
    - Src: "com.google.inject.internal.ProxyFactory:118,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.ProxyFactory:121,1"
      Dst: "[java.util.BitSet].nextSetBit(int)"
    - Src: "com.google.inject.internal.ProxyFactory:127,1"
      Dst: "[com.google.common.collect.Multimap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.ProxyFactory:127,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - Src: "com.google.inject.internal.ProxyFactory:127,1"
      Dst: "[com.google.common.collect.ImmutableCollection].asList()"
    - Src: "com.google.inject.internal.ProxyFactory:128,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ProxyFactory:130,1"
      Dst: "[com.google.inject.internal.BytecodeGen].superMethod(java.util.function.Function,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.ProxyFactory:131,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback].<init>(java.lang.reflect.Method,java.util.List,java.util.function.BiFunction)"
    - Src: "com.google.inject.internal.ProxyFactory:134,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.MethodAspect].matches(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MethodAspect:72,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MethodAspect].interceptors()"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].getInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.SingleFieldInjector].getInjectionPoint()"
    - "[com.google.inject.internal.SingleMethodInjector].getInjectionPoint()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    functionUses: 1
    ICount: 16
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:176"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:183"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "builder()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:182"
        BranchSideFuncs:
        - "of()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:178"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:181"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "getInjectionPoint()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:180"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:177,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:178,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:178,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:178,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:179,1"
      Dst: "[com.google.inject.internal.SingleMemberInjector].getInjectionPoint()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:179,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:181,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:183,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore$1].create(java.lang.Object,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjectorStore$1].create(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore$1:33,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore$1].create(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121:-1,1"
      Dst: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].<init>()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].lambda$static$0(java.lang.Integer)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121:-1,1"
      Dst: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].lambda$static$0(java.lang.Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].lambda$static$0(java.lang.Integer)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].bootstrap$(java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].<init>(java.util.Formatter)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].<init>(java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].<init>(java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$1(java.util.Formatter,java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$1(java.util.Formatter,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$1(java.util.Formatter,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Formatter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:53,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider"
    linkageType: ""
    functionLinenumber: 1131
    functionLinenumberEnd: 1133
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].doInitialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider"
    linkageType: ""
    functionLinenumber: 1136
    functionLinenumberEnd: 1178
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - "[com.google.common.collect.ImmutableEnumMap].size()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].size()"
    - "[com.google.common.collect.RegularImmutableMap].size()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].size()"
    - "[com.google.common.collect.JdkBackedImmutableMap].size()"
    - "[com.google.common.collect.RegularImmutableBiMap].size()"
    - "[com.google.common.collect.SingletonImmutableBiMap].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].size()"
    - "[com.google.common.collect.ImmutableSortedMap].size()"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].size()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapBindings()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[java.util.ArrayList].clear()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.AbstractTable$CellSet].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].size()"
    - "[com.google.common.graph.MapIteratorCache$1].size()"
    - "[com.google.common.collect.Maps$EntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].size()"
    - "[com.google.common.collect.Sets$4].size()"
    - "[com.google.common.collect.EmptyContiguousSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$2].size()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.graph.UndirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].size()"
    - "[com.google.common.collect.CompactHashSet].size()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].size()"
    - "[com.google.common.graph.AbstractNetwork$1$1].size()"
    - "[com.google.common.collect.Maps$KeySet].size()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[java.util.HashSet].size()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].size()"
    - "[com.google.common.collect.Sets$2].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].size()"
    - "[com.google.common.graph.DirectedMultiNetworkConnections$1].size()"
    - "[java.util.concurrent.CopyOnWriteArraySet].size()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].size()"
    - "[com.google.common.collect.Collections2$FilteredCollection].size()"
    - "[com.google.common.collect.Sets$SubSet].size()"
    - "[com.google.common.graph.EdgesConnecting].size()"
    - "[com.google.common.collect.Multisets$ElementSet].size()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableEnumSet].size()"
    - "[java.util.TreeSet].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.graph.DirectedGraphConnections$1].size()"
    - "[com.google.common.collect.RegularImmutableSet].size()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].size()"
    - "[com.google.common.collect.Sets$5$1$1].size()"
    - "[com.google.common.collect.Multimaps$Entries].size()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].size()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].size()"
    - "[com.google.common.collect.Sets$PowerSet].size()"
    - "[com.google.common.collect.Sets$5].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.Sets$3].size()"
    - "[com.google.common.graph.AbstractBaseGraph$1].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.graph.IncidentEdgeSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$3].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].size()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.collect.SingletonImmutableSet].size()"
    - "[com.google.common.collect.Sets$1].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData].<init>(java.lang.Object,com.google.inject.Binding[],com.google.inject.internal.SingleParameterInjector[])"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[java.util.Map].size()"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].clear()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map$Entry].getKey()"
    functionUses: 1
    ICount: 52
    EdgeCount: 416
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1140"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1139"
        BranchSideFuncs:
        - "getMultimapBindings()"
        - "getMapBindings()"
        - "builder()"
        - "entrySet()"
        - "newArrayList()"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1176"
        BranchSideFuncs:
        - "hasNext()"
        - "getMultimapBindings()"
        - "getValue()"
        - "next()"
        - "iterator()"
        - "entrySet()"
        - "size()"
        - "clear()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1175"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1159"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1170"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "next()"
        - "get(com.google.inject.Key)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1169"
        BranchSideFuncs:
        - "getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
        - "<init>(java.lang.Object,com.google.inject.Binding[],com.google.inject.internal.SingleParameterInjector[])"
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1144,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1144,1"
      Dst: "[java.util.Map].size()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1146,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1147,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1150,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1152,1"
      Dst: "[java.util.List].clear()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1154,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1156,1"
      Dst: "[java.util.Set].size()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1159,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1160,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1160,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1161,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1162,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1170,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1172,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1172,1"
      Dst: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider$PerKeyData].<init>(java.lang.Object,com.google.inject.Binding[],com.google.inject.internal.SingleParameterInjector[])"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1176,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider"
    linkageType: ""
    functionLinenumber: 1181
    functionLinenumberEnd: 1202
    functionDepth: 12
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - "[com.google.inject.internal.RealMapBinder].createNullValueException(java.lang.Object,com.google.inject.Binding)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    functionUses: 2
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1184"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1201"
        BranchSideFuncs:
        - "builder()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1200"
        BranchSideFuncs:
        - "buildOrThrow()"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1187"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:null"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext)"
    - Branch String: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1191"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:null"
        BranchSideFuncs:
        - "createNullValueException(java.lang.Object,com.google.inject.Binding)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1182,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1185,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1189,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1192,1"
      Dst: "[com.google.inject.internal.RealMapBinder].createNullValueException(java.lang.Object,com.google.inject.Binding)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1195,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1198,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1198,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider:1201,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder].createNullValueException(java.lang.Object,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 1379
    functionLinenumberEnd: 1381
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:1380,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.RealMapBinder:1376,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].<init>()"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].newCircularProxy(java.lang.Class<T>,java.lang.reflect.InvocationHandler)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class<T>"
    - "java.lang.reflect.InvocationHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - "[java.lang.Object].getClass()"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].cast(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:64,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.BytecodeGen:64,1"
      Dst: "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - Src: "com.google.inject.internal.BytecodeGen:65,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.BytecodeGen:65,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.BytecodeGen:66,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].enhancerBuilder(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "com.google.inject.internal.BytecodeGen$EnhancerBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:104,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].enhancedConstructor(java.util.function.Function<String,BiFunction<Object,Object[],Object>>,java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "java.util.function.BiFunction<Object,Object[],Object>"
    argCount: 2
    argTypes:
    - "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].canEnhance(java.lang.reflect.Executable)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$spliterator__131].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].apply(java.lang.Object)"
    - "[com.google.common.graph.UndirectedGraphConnections$lambda_incidentEdgeIterator_0__20].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__77].apply(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$1].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_1__122].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$2$iterator__11].apply(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].apply(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$1].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.Graphs$TransposedGraph$1$lambda_iterator_0__4].apply(java.lang.Object)"
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].apply(java.lang.Object)"
    - "[com.google.inject.internal.PackageNameCompressor$length__65].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$13].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__79].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_entrySpliterator_0__127].apply(java.lang.Object)"
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].apply(java.lang.Object)"
    - "[jdk.internal.module.ModuleLoaderMap$Mapper].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_0__7].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$11].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].apply(java.lang.Object)"
    - "[jdk.internal.jmod.JmodFile$Entry$jmodDir__186].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries$wrapEntry__103].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_2__21].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].apply(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$incidentNodes__17].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet$1].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$1$stream__98].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$9$iterator__9].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$getKey__133].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__165].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$3].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_1__130].apply(java.lang.Object)"
    - "[jdk.internal.loader.Loader$lambda_moduleReaderFor_7__114].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet$1].apply(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$LowerBoundFn].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$FromIterableFunction].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ToStringFunction].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph$lambda_edgeValueMap_0__16].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__181].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_1__23].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].apply(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$lambda_createColumnKeyIterator_0__24].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__177].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$getKey__99].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_1__123].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_0__137].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_0__139].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_0__138].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].apply(java.lang.Object)"
    - "[jdk.internal.loader.BuiltinClassLoader$5].apply(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$getErrorDetail__62].apply(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$getValue__132].apply(java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap$2$lambda_spliterator_0__106].apply(java.lang.Object)"
    - "[jdk.internal.module.SystemModuleFinders$SystemModuleReader$toInputStream__196].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet$lambda_iterator_0__5].apply(java.lang.Object)"
    - "[jdk.internal.logger.BootstrapLogger$RedirectedLoggers].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$2].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1$lambda_iterator_0__10].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$10].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransposeTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getType__80].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$getValue__125].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_0__22].apply(java.lang.Object)"
    - "[com.google.common.collect.Multisets$lambda_spliteratorImpl_0__107].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].apply(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReaderFactory$1].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$lambda_computeToString_0__26].apply(java.lang.Object)"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__73].apply(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__75].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$wrapEntry__126].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$copyOf__60].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingValueReference$lambda_loadFuture_0__167].apply(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_1__8].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__81].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__166].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__185].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_2__6].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].apply(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues$getValue__104].apply(java.lang.Object)"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$1].apply(java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$init__12].apply(java.lang.Object)"
    - "[com.google.common.base.Converter].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$UpperBoundFn].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap$lambda_asMap_0__59].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction:com.google.common.base.Functions$IdentityFunction:com.google.common.cache.AbstractLoadingCache:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$1:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$2:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$3:java.lang.invoke.StringConcatFactory$MethodHandleStringBuilderStrategy$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 118
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:113,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].canEnhance(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.BytecodeGen:113,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.BytecodeGen:114,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.BytecodeGen:114,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].superMethod(java.util.function.Function<String,BiFunction<Object,Object[],Object>>,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 2
    returnType: "java.util.function.BiFunction<Object,Object[],Object>"
    argCount: 2
    argTypes:
    - "java.util.function.Function<String,BiFunction<Object,Object[],Object>>"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$spliterator__131].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].apply(java.lang.Object)"
    - "[com.google.common.graph.UndirectedGraphConnections$lambda_incidentEdgeIterator_0__20].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__77].apply(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$1].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_1__122].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$2$iterator__11].apply(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].apply(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$1].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.Graphs$TransposedGraph$1$lambda_iterator_0__4].apply(java.lang.Object)"
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].apply(java.lang.Object)"
    - "[com.google.inject.internal.PackageNameCompressor$length__65].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$13].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__79].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_entrySpliterator_0__127].apply(java.lang.Object)"
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].apply(java.lang.Object)"
    - "[jdk.internal.module.ModuleLoaderMap$Mapper].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_0__7].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$11].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].apply(java.lang.Object)"
    - "[jdk.internal.jmod.JmodFile$Entry$jmodDir__186].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries$wrapEntry__103].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_2__21].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].apply(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorInjectorStore$fromBinding__194].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$incidentNodes__17].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet$1].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$1$stream__98].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$9$iterator__9].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$getKey__133].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__165].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$3].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_1__130].apply(java.lang.Object)"
    - "[jdk.internal.loader.Loader$lambda_moduleReaderFor_7__114].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet$1].apply(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$LowerBoundFn].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$FromIterableFunction].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ToStringFunction].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph$lambda_edgeValueMap_0__16].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__181].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_1__23].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].apply(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$lambda_createColumnKeyIterator_0__24].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__177].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$getKey__99].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_1__123].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_0__137].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_0__139].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_0__138].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].apply(java.lang.Object)"
    - "[jdk.internal.loader.BuiltinClassLoader$5].apply(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$getErrorDetail__62].apply(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$getValue__132].apply(java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap$2$lambda_spliterator_0__106].apply(java.lang.Object)"
    - "[jdk.internal.module.SystemModuleFinders$SystemModuleReader$toInputStream__196].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet$lambda_iterator_0__5].apply(java.lang.Object)"
    - "[jdk.internal.logger.BootstrapLogger$RedirectedLoggers].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$2].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1$lambda_iterator_0__10].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$10].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransposeTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getType__80].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$getValue__125].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_0__22].apply(java.lang.Object)"
    - "[com.google.common.collect.Multisets$lambda_spliteratorImpl_0__107].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].apply(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReaderFactory$1].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$lambda_computeToString_0__26].apply(java.lang.Object)"
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl$doBuildEnhancer__197].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__73].apply(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__75].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$wrapEntry__126].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$copyOf__60].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingValueReference$lambda_loadFuture_0__167].apply(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_1__8].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__81].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__166].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__185].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_2__6].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].apply(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues$getValue__104].apply(java.lang.Object)"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$1].apply(java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$init__12].apply(java.lang.Object)"
    - "[com.google.common.base.Converter].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$UpperBoundFn].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap$lambda_asMap_0__59].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction:com.google.common.base.Functions$IdentityFunction:com.google.common.cache.AbstractLoadingCache:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$1:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$2:java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$3:java.lang.invoke.StringConcatFactory$MethodHandleStringBuilderStrategy$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 116
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:124,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.BytecodeGen:124,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen].fastConstructor(java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 138
    functionDepth: 2
    returnType: "java.util.function.BiFunction<Object,Object[],Object>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].canFastInvoke(java.lang.reflect.Executable)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$spliterator__131].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$1].apply(java.lang.Object)"
    - "[com.google.common.graph.UndirectedGraphConnections$lambda_incidentEdgeIterator_0__20].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__77].apply(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$1].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_1__122].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$2$iterator__11].apply(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].apply(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$1].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.Graphs$TransposedGraph$1$lambda_iterator_0__4].apply(java.lang.Object)"
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].apply(java.lang.Object)"
    - "[com.google.inject.internal.PackageNameCompressor$length__65].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$13].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$lambda_formatText_0__3].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$annotationType__51].apply(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__79].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_entrySpliterator_0__127].apply(java.lang.Object)"
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].apply(java.lang.Object)"
    - "[jdk.internal.module.ModuleLoaderMap$Mapper].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_0__7].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$11].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen$buildEnhancerBuilder__1].apply(java.lang.Object)"
    - "[jdk.internal.jmod.JmodFile$Entry$jmodDir__186].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries$wrapEntry__103].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_2__21].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$incidentNodes__17].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet$1].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$1$stream__98].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$trimSource__152].apply(java.lang.Object)"
    - "[com.google.common.collect.Iterables$9$iterator__9].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$getKey__133].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__165].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$3].apply(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_1__130].apply(java.lang.Object)"
    - "[jdk.internal.loader.Loader$lambda_moduleReaderFor_7__114].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet$1].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$1].apply(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$LowerBoundFn].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].apply(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable$FromIterableFunction].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ToStringFunction].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph$lambda_edgeValueMap_0__16].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleStringBuilderStrategy$1].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__181].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_1__23].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].apply(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$lambda_createColumnKeyIterator_0__24].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__177].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$getKey__99].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_1__123].apply(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getViolationMessage_0__55].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$lambda_entrySpliterator_0__137].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$lambda_entrySpliterator_0__139].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$lambda_cellSpliterator_0__138].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].apply(java.lang.Object)"
    - "[jdk.internal.loader.BuiltinClassLoader$5].apply(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].apply(java.lang.Object)"
    - "[com.google.inject.internal.Messages$getErrorDetail__62].apply(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$getValue__132].apply(java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap$2$lambda_spliterator_0__106].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider$lambda_new_0__92].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet$lambda_iterator_0__5].apply(java.lang.Object)"
    - "[jdk.internal.logger.BootstrapLogger$RedirectedLoggers].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$IdentityFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntryFunction$2].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1$lambda_iterator_0__10].apply(java.lang.Object)"
    - "[com.google.common.collect.Maps$10].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransposeTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getType__80].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$1].apply(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].apply(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$getValue__125].apply(java.lang.Object)"
    - "[com.google.common.cache.AbstractLoadingCache].apply(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$lambda_incidentEdgeIterator_0__22].apply(java.lang.Object)"
    - "[com.google.common.collect.Multisets$lambda_spliteratorImpl_0__107].apply(java.lang.Object)"
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].apply(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReaderFactory$1].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$3].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$lambda_computeToString_0__26].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__73].apply(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierFunctionImpl].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__75].apply(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$wrapEntry__126].apply(java.lang.Object)"
    - "[com.google.common.collect.Tables$TransformedTable$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].apply(java.lang.Object)"
    - "[com.google.common.net.MediaType$copyOf__60].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].apply(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingValueReference$lambda_loadFuture_0__167].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_1__8].apply(java.lang.Object)"
    - "[com.google.inject.internal.DeclaredMembers$getName__81].apply(java.lang.Object)"
    - "[jdk.internal.logger.DefaultLoggerFinder$makeSimpleLogger__166].apply(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].apply(java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$build__185].apply(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$2$lambda_iterator_2__6].apply(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].apply(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].apply(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail$lambda_format_0__109].apply(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapValues$getValue__104].apply(java.lang.Object)"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$1].apply(java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$init__12].apply(java.lang.Object)"
    - "[com.google.common.base.Converter].apply(java.lang.Object)"
    - "[com.google.common.collect.Range$UpperBoundFn].apply(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$UnmodifiableMultimap$lambda_asMap_0__59].apply(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$MethodHandleInlineCopyStrategy$2].apply(java.lang.Object)"
    - "[com.google.inject.internal.BytecodeGen].fastClass(java.lang.reflect.Executable)"
    - "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 119
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BytecodeGen:134"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BytecodeGen:137"
        BranchSideFuncs:
        - "apply(java.lang.Object)"
        - "fastClass(java.lang.reflect.Executable)"
        - "signature(java.lang.reflect.Constructor)"
      - BranchSide: "com.google.inject.internal.BytecodeGen:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen:134,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].canFastInvoke(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.BytecodeGen:135,1"
      Dst: "[com.google.inject.internal.BytecodeGen].fastClass(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.BytecodeGen:135,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].signature(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.BytecodeGen:135,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].mergeMethods(java.lang.Object,java.lang.Object)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$mergeMethods__49:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].mergeMethods(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].lambda$pushModule$0(java.lang.Class)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction].lambda$pushModule$0(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$0(java.util.function.Predicate,java.lang.StackWalker$StackFrame)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$0(java.util.function.Predicate,java.lang.StackWalker$StackFrame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder].lambda$findCaller$0(java.util.function.Predicate,java.lang.StackWalker$StackFrame)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder"
    linkageType: ""
    functionLinenumber: 12
    functionLinenumberEnd: 14
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.function.Predicate"
    - "java.lang.StackWalker$StackFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StackFrameInfo].getClassName()"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].test(java.lang.Object)"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$contains__54].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingSequentialList$lambda_removeIf_0__33].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].test(java.lang.Object)"
    - "[jdk.internal.logger.SimpleConsoleLogger$CallerFinder].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].test(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_removeIf_1__70].test(java.lang.Object)"
    - "[com.google.common.base.Predicate].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList$lambda_removeIf_0__34].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].test(java.lang.Object)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_0__187].test(java.lang.Object)"
    - "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$3$lambda_stream_0__28].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_removeIf_2__69].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].test(java.lang.Object)"
    - "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$2$contains__29].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$1$lambda_stream_0__27].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].test(java.lang.Object)"
    - "[com.google.inject.internal.Messages$isMergeable__63].test(java.lang.Object)"
    - "[java.lang.StackWalker$StackFrame].getClassName()"
    - "[java.util.function.Predicate].test(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.DirectStackWalkerFinder:13"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.DirectStackWalkerFinder:12"
        BranchSideFuncs:
        - "getClassName()"
        - "test(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.lang.StackWalker$StackFrame].getClassName()"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.util.function.Predicate].test(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.ProvisionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "com.google.inject.ProvisionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - "[com.google.inject.spi.Message].<init>(java.lang.String,java.lang.Throwable)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.ProvisionException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - Src: "com.google.inject.ProvisionException:46,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "com.google.inject.ProvisionException:46,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ProvisionException].<init>(java.lang.String)"
    functionSourceFile: "com.google.inject.ProvisionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    - "[com.google.inject.spi.Message].<init>(java.lang.String)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.ProvisionException:49,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    - Src: "com.google.inject.ProvisionException:50,1"
      Dst: "[com.google.inject.spi.Message].<init>(java.lang.String)"
    - Src: "com.google.inject.ProvisionException:50,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.ProvisionException].getMessage()"
    functionSourceFile: "com.google.inject.ProvisionException"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.ProvisionException:60,1"
      Dst: "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].bootstrap$(java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].<init>(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144:-1,1"
      Dst: "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].<init>(java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingConstructorError].lambda$formatDetail$0(java.util.List,com.google.inject.spi.ErrorDetail)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144:-1,1"
      Dst: "[com.google.inject.internal.MissingConstructorError].lambda$formatDetail$0(java.util.List,com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError].lambda$formatDetail$0(java.util.List,com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError:69,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.MissingConstructorError:69,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet].cleanupOnRemoval(com.google.common.cache.RemovalNotification<InjectorBindingData,Set<KeyAndSource>>)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.cache.RemovalNotification<InjectorBindingData,Set<KeyAndSource>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.cache.RemovalNotification].getCause()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$1].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.AbstractMultiset].isEmpty()"
    - "[com.google.common.collect.Multisets$3].isEmpty()"
    - "[com.google.common.collect.ConcurrentHashMultiset].isEmpty()"
    - "[com.google.common.collect.HashMultiset].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.TreeMultiset].isEmpty()"
    - "[com.google.common.collect.EnumMultiset].isEmpty()"
    - "[com.google.common.collect.LinkedHashMultiset].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].remove(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].remove(java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[com.google.common.collect.Multiset].remove(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 34
    EdgeCount: 277
    BranchProfiles:
    - Branch String: "com.google.inject.internal.WeakKeySet:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:72"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "get(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.WeakKeySet:71"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:71"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.WeakKeySet:70"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:71"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.WeakKeySet:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:58,1"
      Dst: "[com.google.common.cache.RemovalNotification].getCause()"
    - Src: "com.google.inject.internal.WeakKeySet:58,1"
      Dst: "[java.lang.Enum].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:58,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean)"
    - Src: "com.google.inject.internal.WeakKeySet:63,1"
      Dst: "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - Src: "com.google.inject.internal.WeakKeySet:63,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.WeakKeySet:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.WeakKeySet:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.WeakKeySet:64,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:66,1"
      Dst: "[com.google.common.collect.Multiset].remove(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:67,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "com.google.inject.internal.WeakKeySet:68,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.WeakKeySet].add(com.google.inject.Key<?>,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 100
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.internal.InjectorBindingData"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].add(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].bootstrap$()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.cache.LocalCache].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.concurrent.ConcurrentHashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Optional].isPresent()"
    - "[com.google.inject.internal.InjectorBindingData:java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].parent()"
    - "[com.google.common.cache.LocalCache$LocalManualCache].getIfPresent(java.lang.Object)"
    - "[com.google.common.cache.ForwardingCache].getIfPresent(java.lang.Object)"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[com.google.common.cache.ForwardingCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.AbstractCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalManualCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].<init>(com.google.inject.Key,java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Multiset].add(java.lang.Object)"
    - "[com.google.inject.internal.InjectorBindingData].parent()"
    - "[com.google.common.cache.Cache].getIfPresent(java.lang.Object)"
    - "[com.google.common.cache.Cache].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 35
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "com.google.inject.internal.WeakKeySet:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:85"
        BranchSideFuncs:
        - "newHashMap()"
      - BranchSide: "com.google.inject.internal.WeakKeySet:84"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:86"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.WeakKeySet:85"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:88"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.WeakKeySet:87"
        BranchSideFuncs:
        - "computeIfAbsent(java.lang.Object,java.util.function.Function)"
        - "parent()"
        - "bootstrap$()"
        - "isPresent()"
        - "convert(java.lang.Object)"
    - Branch String: "com.google.inject.internal.WeakKeySet:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:99"
        BranchSideFuncs:
        - "getIfPresent(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.WeakKeySet:98"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet:94"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:97"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "newHashSet()"
      - BranchSide: "com.google.inject.internal.WeakKeySet:96"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(com.google.inject.Key,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:81,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.internal.WeakKeySet:88,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:89,1"
      Dst: "[com.google.inject.internal.WeakKeySet$lambda_add_0__188].bootstrap$()"
    - Src: "com.google.inject.internal.WeakKeySet:89,1"
      Dst: "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - Src: "com.google.inject.internal.WeakKeySet:89,1"
      Dst: "[com.google.common.collect.Multiset].add(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:92,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].parent()"
    - Src: "com.google.inject.internal.WeakKeySet:92,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.WeakKeySet:93,1"
      Dst: "[com.google.common.cache.Cache].getIfPresent(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:95,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.internal.WeakKeySet:95,1"
      Dst: "[com.google.common.cache.Cache].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:97,1"
      Dst: "[com.google.inject.internal.WeakKeySet$KeyAndSource].<init>(com.google.inject.Key,java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:97,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.WeakKeySet$KeyAndSource].<init>(com.google.inject.Key,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$KeyAndSource"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Key"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$KeyAndSource:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet].contains(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.ForwardingCache].cleanUp()"
    - "[com.google.common.cache.LocalCache$LocalManualCache].cleanUp()"
    - "[com.google.common.cache.AbstractCache:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].cleanUp()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[com.google.common.cache.Cache].cleanUp()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "com.google.inject.internal.WeakKeySet:103"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:101"
        BranchSideFuncs:
        - "cleanUp()"
        - "containsKey(java.lang.Object)"
    - Branch String: "com.google.inject.internal.WeakKeySet:103"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:101"
        BranchSideFuncs:
        - "cleanUp()"
        - "containsKey(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:102,1"
      Dst: "[com.google.common.cache.Cache].cleanUp()"
    - Src: "com.google.inject.internal.WeakKeySet:103,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.WeakKeySet].getSources(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "java.util.Set<Object>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.ForwardingCache].cleanUp()"
    - "[com.google.common.cache.LocalCache$LocalManualCache].cleanUp()"
    - "[com.google.common.cache.AbstractCache:com.google.common.collect.RegularImmutableSortedMultiset:java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].cleanUp()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMultiset].elementSet()"
    - "[com.google.common.collect.HashMultiset].elementSet()"
    - "[com.google.common.collect.Multimaps$Keys].elementSet()"
    - "[com.google.common.collect.LinkedHashMultiset].elementSet()"
    - "[com.google.common.collect.DescendingMultiset].elementSet()"
    - "[com.google.common.collect.ForwardingMultiset].elementSet()"
    - "[com.google.common.collect.RegularImmutableMultiset].elementSet()"
    - "[com.google.common.collect.EnumMultiset].elementSet()"
    - "[com.google.common.collect.AbstractMultiset].elementSet()"
    - "[com.google.common.collect.ForwardingSortedMultiset].elementSet()"
    - "[com.google.common.collect.UnmodifiableSortedMultiset].elementSet()"
    - "[com.google.common.collect.TreeMultiset].elementSet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].elementSet()"
    - "[com.google.common.collect.ImmutableMultimap$Keys].elementSet()"
    - "[com.google.common.collect.DescendingImmutableSortedMultiset].elementSet()"
    - "[com.google.common.collect.ConcurrentHashMultiset].elementSet()"
    - "[com.google.common.collect.AbstractSortedMultiset].elementSet()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].elementSet()"
    - "[com.google.common.cache.Cache].cleanUp()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[com.google.common.collect.Multiset].elementSet()"
    functionUses: 1
    ICount: 16
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "com.google.inject.internal.WeakKeySet:108"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:107"
        BranchSideFuncs:
        - "elementSet()"
      - BranchSide: "com.google.inject.internal.WeakKeySet:106"
        BranchSideFuncs:
        - "cleanUp()"
        - "get(java.lang.Object)"
    - Branch String: "com.google.inject.internal.WeakKeySet:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet:108"
        BranchSideFuncs:
        - "elementSet()"
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet:107,1"
      Dst: "[com.google.common.cache.Cache].cleanUp()"
    - Src: "com.google.inject.internal.WeakKeySet:108,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.WeakKeySet:109,1"
      Dst: "[com.google.common.collect.Multiset].elementSet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MessageProcessor].visit(com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.MessageProcessor"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].getCause()"
    - "[com.google.inject.internal.MessageProcessor].getRootMessage(java.lang.Throwable)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MessageProcessor:40"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MessageProcessor:48"
        BranchSideFuncs:
        - "getRootMessage(java.lang.Throwable)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
      - BranchSide: "com.google.inject.internal.MessageProcessor:47"
        BranchSideFuncs:
        - "addMessage(com.google.inject.spi.Message)"
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.internal.MessageProcessor:40,1"
      Dst: "[com.google.inject.spi.Message].getCause()"
    - Src: "com.google.inject.internal.MessageProcessor:41,1"
      Dst: "[com.google.inject.internal.MessageProcessor].getRootMessage(java.lang.Throwable)"
    - Src: "com.google.inject.internal.MessageProcessor:42,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.MessageProcessor:42,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    - Src: "com.google.inject.internal.MessageProcessor:48,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    - Src: "com.google.inject.internal.MessageProcessor:49,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MessageProcessor].getRootMessage(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.MessageProcessor"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.UncheckedIOException:java.lang.ClassNotFoundException:java.lang.ExceptionInInitializerError:java.lang.Throwable:java.lang.reflect.InvocationTargetException:java.lang.reflect.UndeclaredThrowableException:java.nio.file.DirectoryIteratorException:java.security.PrivilegedActionException:org.aopalliance.aop.AspectException].getCause()"
    - "[com.google.inject.internal.MessageProcessor].getRootMessage(java.lang.Throwable)"
    - "[java.lang.Throwable].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[java.lang.Throwable].getCause()"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MessageProcessor:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MessageProcessor:52"
        BranchSideFuncs:
        - "getRootMessage(java.lang.Throwable)"
        - "getCause()"
        - "toString()"
    Callsites:
    - Src: "com.google.inject.internal.MessageProcessor:53,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "com.google.inject.internal.MessageProcessor:54,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "com.google.inject.internal.MessageProcessor:54,1"
      Dst: "[com.google.inject.internal.MessageProcessor].getRootMessage(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SourceFormatter].formatDependency(com.google.inject.spi.Dependency<?>)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Dependency<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[com.google.inject.internal.SourceFormatter].formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.SourceFormatter].formatKey(com.google.inject.Key)"
    - "[com.google.inject.spi.Dependency].getKey()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:79"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:82"
        BranchSideFuncs:
        - "formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:81"
        BranchSideFuncs:
        - "formatKey(com.google.inject.Key)"
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:78,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.SourceFormatter:80,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatInjectionPoint(com.google.inject.spi.Dependency,com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.SourceFormatter:82,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.SourceFormatter:82,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatKey(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.SourceFormatter].formatKey(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:87,1"
      Dst: "[com.google.inject.internal.SourceFormatter].preposition(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:87,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.SourceFormatter:87,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SourceFormatter].formatInjectionPoint(com.google.inject.spi.Dependency<?>,com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.Dependency<?>"
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - "[com.google.inject.internal.SourceFormatter].formatMember(java.lang.reflect.Member)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.reflect.Invokable].getName()"
    - "[java.lang.reflect.Constructor].getName()"
    - "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - "[com.google.inject.internal.SourceFormatter].getParameterName(com.google.inject.spi.Dependency)"
    - "[java.lang.reflect.Member].getName()"
    functionUses: 2
    ICount: 26
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:98"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:100"
        BranchSideFuncs:
        - "getName()"
        - "redBold(java.lang.String)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:100"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:95,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.SourceFormatter:96,1"
      Dst: "[com.google.inject.internal.util.Classes].memberType(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.SourceFormatter:97,1"
      Dst: "[com.google.inject.internal.SourceFormatter].formatMember(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.SourceFormatter:99,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "com.google.inject.internal.SourceFormatter:99,1"
      Dst: "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:99,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.SourceFormatter:102,1"
      Dst: "[com.google.inject.internal.SourceFormatter].getParameterName(com.google.inject.spi.Dependency)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.SourceFormatter].getParameterName(com.google.inject.spi.Dependency<?>)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 141
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Dependency<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getParameterIndex()"
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[java.lang.reflect.Executable].getParameters()"
    - "[java.lang.reflect.Parameter].isNamePresent()"
    - "[java.lang.reflect.Parameter].getName()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.internal.SourceFormatter].getOrdinalSuffix(int)"
    - "[java.lang.String].isEmpty()"
    - "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 3
    ICount: 36
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:127"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:129"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.SourceFormatter:128"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.SourceFormatter:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:132"
        BranchSideFuncs:
        - "getParameters()"
      - BranchSide: "com.google.inject.internal.SourceFormatter:131"
        BranchSideFuncs:
        - "isNamePresent()"
    - Branch String: "com.google.inject.internal.SourceFormatter:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:136"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "com.google.inject.internal.SourceFormatter:135"
        BranchSideFuncs:
        - "isEmpty()"
        - "redBold(java.lang.String)"
        - "format(java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
        - "getOrdinalSuffix(int)"
    - Branch String: "com.google.inject.internal.SourceFormatter:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:136"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "com.google.inject.internal.SourceFormatter:135"
        BranchSideFuncs:
        - "isEmpty()"
        - "redBold(java.lang.String)"
        - "format(java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
        - "getOrdinalSuffix(int)"
    - Branch String: "com.google.inject.internal.SourceFormatter:140"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:135"
        BranchSideFuncs:
        - "isEmpty()"
        - "redBold(java.lang.String)"
        - "format(java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
        - "getOrdinalSuffix(int)"
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:123,1"
      Dst: "[com.google.inject.spi.Dependency].getParameterIndex()"
    - Src: "com.google.inject.internal.SourceFormatter:125,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.SourceFormatter:125,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.SourceFormatter:128,1"
      Dst: "[java.lang.reflect.Executable].getParameters()"
    - Src: "com.google.inject.internal.SourceFormatter:133,1"
      Dst: "[java.lang.reflect.Parameter].isNamePresent()"
    - Src: "com.google.inject.internal.SourceFormatter:134,1"
      Dst: "[java.lang.reflect.Parameter].getName()"
    - Src: "com.google.inject.internal.SourceFormatter:138,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.SourceFormatter:139,1"
      Dst: "[com.google.inject.internal.SourceFormatter].getOrdinalSuffix(int)"
    - Src: "com.google.inject.internal.SourceFormatter:140,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "com.google.inject.internal.SourceFormatter:140,1"
      Dst: "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:140,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.SourceFormatter:136,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.SourceFormatter].getOrdinalSuffix(int)"
    functionSourceFile: "com.google.inject.internal.SourceFormatter"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.SourceFormatter:151"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:151"
        BranchSideFuncs:
        - "checkArgument(boolean)"
      - BranchSide: "com.google.inject.internal.SourceFormatter:150"
        BranchSideFuncs:
        - "checkArgument(boolean)"
    - Branch String: "com.google.inject.internal.SourceFormatter:152"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.SourceFormatter:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.SourceFormatter:151,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.spi.ProvisionListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProvisionListenerBinding:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.ProvisionListenerBinding:42,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].getListeners()"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].getBindingMatcher()"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.matcher.Matcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].getSource()"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<R>)"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<R>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ProvisionListenerBinding)"
    - "[com.google.inject.internal.ListenerBindingProcessor].visit(com.google.inject.spi.ProvisionListenerBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ProvisionListenerBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProvisionListenerBinding:64,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ProvisionListenerBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProvisionListenerBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.ProvisionListenerBinding"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProvisionListenerBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.ForwardingCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].toArray(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[com.google.inject.Binder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    functionUses: 4
    ICount: 13
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProvisionListenerBinding:70,1"
      Dst: "[com.google.inject.spi.ProvisionListenerBinding].getSource()"
    - Src: "com.google.inject.spi.ProvisionListenerBinding:70,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.ProvisionListenerBinding:71,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.spi.ProvisionListenerBinding:71,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "com.google.inject.spi.ProvisionListenerBinding:71,1"
      Dst: "[com.google.inject.Binder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].getJitBinding(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "com.google.inject.internal.BindingImpl<?>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 37
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:49,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].putJitBinding(com.google.inject.Key<?>,com.google.inject.internal.BindingImpl<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.internal.BindingImpl<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:53,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].removeJitBinding(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].remove(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].remove(java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].remove(java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.EnumMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:57,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].isFailedJitBinding(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$2].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$SubSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1].contains(java.lang.Object)"
    - "[com.google.common.graph.EdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.graph.MapIteratorCache$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5$1$1].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$4].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$2].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.graph.MultiEdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 61
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:61,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].addFailedJitBinding(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:65,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].banKey(com.google.inject.Key<?>,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.internal.InjectorBindingData"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorJitBindingData].banKeyInParent(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet].add(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:75,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].banKeyInParent(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorJitBindingData:76,1"
      Dst: "[com.google.inject.internal.WeakKeySet].add(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].banKeyInParent(com.google.inject.Key<?>,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.internal.InjectorBindingData"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Optional].isPresent()"
    - "[com.google.inject.internal.InjectorJitBindingData].banKey(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    - "[java.util.Optional].get()"
    functionUses: 3
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorJitBindingData:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorJitBindingData:88"
        BranchSideFuncs:
        - "banKey(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
        - "get()"
      - BranchSide: "com.google.inject.internal.InjectorJitBindingData:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:85,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:86,1"
      Dst: "[java.util.Optional].get()"
    - Src: "com.google.inject.internal.InjectorJitBindingData:86,1"
      Dst: "[com.google.inject.internal.InjectorJitBindingData].banKey(com.google.inject.Key,com.google.inject.internal.InjectorBindingData,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].isBannedKey(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet].contains(com.google.inject.Key)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:95,1"
      Dst: "[com.google.inject.internal.WeakKeySet].contains(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorJitBindingData].getSourcesForBannedKey(com.google.inject.Key<?>)"
    functionSourceFile: "com.google.inject.internal.InjectorJitBindingData"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "java.util.Set<Object>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet].getSources(com.google.inject.Key)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorJitBindingData:100,1"
      Dst: "[com.google.inject.internal.WeakKeySet].getSources(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].newOptionalBinder(com.google.inject.Binder,java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.OptionalBinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:143,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.multibindings.OptionalBinder:143,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.multibindings.OptionalBinder:143,1"
      Dst: "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealOptionalBinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:156,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].newOptionalBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.OptionalBinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:147,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.multibindings.OptionalBinder:147,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.multibindings.OptionalBinder:147,1"
      Dst: "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].newOptionalBinder(com.google.inject.Binder,com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.OptionalBinder<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:151,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].newRealOptionalBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.multibindings.OptionalBinder:151,1"
      Dst: "[com.google.inject.multibindings.OptionalBinder].<init>(com.google.inject.internal.RealOptionalBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].setDefault()"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].setDefault()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:168,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].setDefault()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].setBinding()"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].setBinding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:179,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].setBinding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    functionUses: 56
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.multibindings.OptionalBinder:186"
      Branch Sides:
      - BranchSide: "com.google.inject.multibindings.OptionalBinder:189"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.multibindings.OptionalBinder:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:187,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.OptionalBinder].hashCode()"
    functionSourceFile: "com.google.inject.multibindings.OptionalBinder"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.OptionalBinder:194,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.util.concurrent.Service$State].values()"
    functionSourceFile: "com.google.common.util.concurrent.Service$State"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "com.google.common.util.concurrent.Service$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.text.Collator].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.util.Calendar].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.util.Vector].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.Date].clone()"
    - "[java.util.TreeSet].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.Properties].clone()"
    - "[java.security.Signature].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.BitSet].clone()"
    - "[java.util.EnumMap].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Object].clone()"
    - "[java.text.NumberFormat].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 45
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.util.concurrent.Service$State:210,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.util.concurrent.Service$State].valueOf(java.lang.String)"
    functionSourceFile: "com.google.common.util.concurrent.Service$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.util.concurrent.Service$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.util.concurrent.Service$State:210,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.util.concurrent.Service$State].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.util.concurrent.Service$State"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.util.concurrent.Service$State:210,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.util.concurrent.Service$State].$values()"
    functionSourceFile: "com.google.common.util.concurrent.Service$State"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "com.google.common.util.concurrent.Service$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].get(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].get(java.lang.Object)"
    - "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].defineInChild(byte[])"
    - "[com.google.common.cache.LoadingCache].get(java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ChildClassDefiner:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ChildClassDefiner:55"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.ChildClassDefiner:54"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:51,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:55,1"
      Dst: "[com.google.common.cache.LoadingCache].get(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:58,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].defineInChild(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].defineInChild(byte[])"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)"
    - "[java.lang.ClassLoader].resolveClass(java.lang.Class)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader:83,1"
      Dst: "[java.lang.ClassLoader].defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader:84,1"
      Dst: "[java.lang.ClassLoader].resolveClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner].doPrivileged(java.security.PrivilegedAction<T>)"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.security.PrivilegedAction<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class$1:java.lang.Class$2:java.lang.Class$3:java.lang.System$1:java.lang.Thread$1:java.lang.ref.Finalizer$1:java.nio.file.Files$FileTypeDetectors$1:java.nio.file.Files$FileTypeDetectors$2:java.security.AccessController:sun.security.action.GetPropertyAction].doPrivileged(java.security.PrivilegedAction)"
    - "[jdk.internal.reflect.ClassDefiner$1].run()"
    - "[jdk.internal.loader.BuiltinClassLoader$4].run()"
    - "[jdk.internal.misc.InnocuousThread$3].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$1].run()"
    - "[jdk.internal.misc.InnocuousThread$2].run()"
    - "[jdk.internal.jimage.BasicImageReader$2].run()"
    - "[jdk.internal.jimage.NativeImageBuffer$1].run()"
    - "[jdk.internal.logger.LazyLoggers$getLoggerFinder__136].run()"
    - "[com.google.inject.internal.InternalFlags$1].run()"
    - "[jdk.internal.reflect.ReflectionFactory$GetReflectionFactoryAction].run()"
    - "[jdk.internal.loader.BuiltinClassLoader$lambda_findResourceOnClassPath_0__195].run()"
    - "[jdk.internal.loader.BootLoader$PackageHelper$2].run()"
    - "[jdk.internal.perf.Perf$GetPerfAction].run()"
    - "[com.google.inject.internal.aop.ChildClassDefiner$SystemChildLoaderHolder$init__206].run()"
    - "[jdk.internal.logger.DefaultLoggerFinder$1].run()"
    - "[jdk.internal.misc.InnocuousThread$1].run()"
    - "[jdk.internal.reflect.MethodAccessorGenerator$1].run()"
    - "[jdk.internal.logger.BootstrapLogger$DetectBackend$1].run()"
    - "[jdk.internal.logger.SimpleConsoleLogger$CallerFinder$1].run()"
    - "[jdk.internal.logger.LazyLoggers$lambda_getLoggerFromFinder_0__135].run()"
    - "[jdk.internal.jimage.BasicImageReader$1].run()"
    - "[jdk.internal.loader.BootLoader$PackageHelper$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 1
    ICount: 3
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:63,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner].childLoader(java.lang.ClassLoader)"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.ClassLoader)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[com.google.inject.internal.aop.ChildClassDefiner$lambda_childLoader_0__214].bootstrap$(java.lang.ClassLoader)"
    - "[com.google.inject.internal.aop.ChildClassDefiner].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:68,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.ClassLoader)"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:68,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:69,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$lambda_childLoader_0__214].bootstrap$(java.lang.ClassLoader)"
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:69,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner].lambda$childLoader$0(java.lang.ClassLoader)"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner:69,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoader].<init>(java.lang.ClassLoader)"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].<init>(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoader:75,1"
      Dst: "[java.lang.ClassLoader].<init>(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.FailableCache$1].<init>(com.google.inject.internal.FailableCache)"
    functionSourceFile: "com.google.inject.internal.FailableCache$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.FailableCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.CacheLoader].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.FailableCache$1:41,1"
      Dst: "[com.google.common.cache.CacheLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.FailableCache$1].load(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.FailableCache$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.ConstructorInjectorStore$1].create(java.lang.Object,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.MembersInjectorStore$1].create(java.lang.Object,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[com.google.common.collect.CompactHashSet].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$KeySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$Entries].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].remove(java.lang.Object)"
    - "[com.google.inject.internal.Errors].hasErrors()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[com.google.inject.internal.FailableCache].create(java.lang.Object,com.google.inject.internal.Errors)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 3
    ICount: 32
    EdgeCount: 142
    BranchProfiles:
    - Branch String: "com.google.inject.internal.FailableCache$1:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.FailableCache$1:53"
        BranchSideFuncs:
        - "hasErrors()"
    Callsites:
    - Src: "com.google.inject.internal.FailableCache$1:44,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.FailableCache$1:45,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.FailableCache$1:48,1"
      Dst: "[com.google.inject.internal.FailableCache].create(java.lang.Object,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.FailableCache$1:52,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "com.google.inject.internal.FailableCache$1:50,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.FailableCache$1:50,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.FailableCache$1:54,1"
      Dst: "[com.google.inject.internal.Errors].hasErrors()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$1].<init>()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.CacheLoader].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$1:44,1"
      Dst: "[com.google.common.cache.CacheLoader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$1].load(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "com.google.inject.internal.util.LineNumbers"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers].<init>(java.lang.Class)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$1:48,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].<init>(java.lang.Class)"
    - Src: "com.google.inject.internal.util.StackTraceElements$1:50,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Class].isArray()"
    - "[java.lang.Class].getName()"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader].<init>(com.google.inject.internal.util.LineNumbers)"
    - "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    - "[com.google.common.io.ReaderInputStream].close()"
    - "[com.google.common.io.MultiInputStream].close()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding$2].close()"
    - "[java.io.BufferedInputStream:java.io.ByteArrayInputStream:java.io.FileInputStream:java.io.FilterInputStream:java.io.InputStream:java.io.InputStream$1:java.io.ObjectInputStream:java.io.ObjectInputStream$BlockDataInputStream:java.io.ObjectInputStream$PeekInputStream:java.lang.ProcessImpl$DeferredCloseInputStream:java.util.jar.Manifest$FastInputStream:java.util.zip.InflaterInputStream:java.util.zip.ZipInputStream].close()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 43
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:97"
        BranchSideFuncs:
        - "getName()"
        - "getResourceAsStream(java.lang.String)"
        - "replace(char,char)"
      - BranchSide: "com.google.inject.internal.util.LineNumbers:96"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers:72"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:96"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers:81"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers:74"
        BranchSideFuncs:
        - "accept(org.objectweb.asm.ClassVisitor,int)"
        - "<init>(com.google.inject.internal.util.LineNumbers)"
        - "<init>(java.io.InputStream)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
        - "close()"
      - BranchSide: "com.google.inject.internal.util.LineNumbers:73"
        BranchSideFuncs:
        - "accept(org.objectweb.asm.ClassVisitor,int)"
        - "<init>(com.google.inject.internal.util.LineNumbers)"
        - "<init>(java.io.InputStream)"
        - "log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
        - "close()"
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.util.LineNumbers:53,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.internal.util.LineNumbers:65,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "com.google.inject.internal.util.LineNumbers:68,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.LineNumbers:68,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "com.google.inject.internal.util.LineNumbers:68,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.util.LineNumbers:68,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "com.google.inject.internal.util.LineNumbers:74,1"
      Dst: "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - Src: "com.google.inject.internal.util.LineNumbers:74,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].<init>(com.google.inject.internal.util.LineNumbers)"
    - Src: "com.google.inject.internal.util.LineNumbers:74,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - Src: "com.google.inject.internal.util.LineNumbers:91,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "com.google.inject.internal.util.LineNumbers:83,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].<init>(com.google.inject.internal.util.LineNumbers)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.LineNumbers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassVisitor].<init>(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:157,1"
      Dst: "[org.objectweb.asm.ClassVisitor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements$1].load(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.StackTraceElements$1].load(java.lang.Class)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements$1:44,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$1].load(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200].bootstrap$(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 2
    argTypes:
    - "java.lang.invoke.MethodHandle"
    - "java.util.function.ToIntFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200].<init>(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200].<init>(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200].<init>(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.invoke.MethodHandle"
    - "java.util.function.ToIntFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$bindSignaturesToInvokers$0(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_0__200:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$bindSignaturesToInvokers$0(java.lang.invoke.MethodHandle,java.util.function.ToIntFunction,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 532
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 535
    functionLinenumberEnd: 537
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ConvertedConstantBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ConvertedConstantBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ConvertedConstantBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ConvertedConstantBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:536,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ConvertedConstantBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getValue()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 540
    functionLinenumberEnd: 542
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getTypeConverterBinding()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.TypeConverterBinding"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getSourceKey()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 550
    functionLinenumberEnd: 552
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:551,1"
      Dst: "[com.google.inject.Binding].getKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getSourceKey()"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:556,1"
      Dst: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getSourceKey()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:556,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:556,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:561,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 571
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getSourceKey()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:566,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:567,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:567,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:568,1"
      Dst: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getSourceKey()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:570,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 574
    functionLinenumberEnd: 582
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:575"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:581"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:580"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:577"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:578"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:579"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:577,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:577,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:578,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:578,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:579,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl"
    linkageType: ""
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:587,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:587,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl:587,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$3].visitNoScoping()"
    functionSourceFile: "com.google.inject.Scopes$3"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$3:140,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$3].visitScopeAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.inject.Scopes$3"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes$3:145"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes$3:144"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.Scopes$3:145,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Scopes$3].visitScope(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.Scopes$3"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.Scopes$3:150"
      Branch Sides:
      - BranchSide: "com.google.inject.Scopes$3:149"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.Scopes$3:150,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Scopes$3].visitEagerSingleton()"
    functionSourceFile: "com.google.inject.Scopes$3"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$3:155,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMapBinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:760,1"
      Dst: "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].doInitialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 764
    functionLinenumberEnd: 792
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - "[com.google.common.collect.ImmutableEnumMap].size()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].size()"
    - "[com.google.common.collect.RegularImmutableMap].size()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].size()"
    - "[com.google.common.collect.JdkBackedImmutableMap].size()"
    - "[com.google.common.collect.RegularImmutableBiMap].size()"
    - "[com.google.common.collect.SingletonImmutableBiMap].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].size()"
    - "[com.google.common.collect.ImmutableSortedMap].size()"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].size()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getValue()"
    - "[com.google.common.collect.ImmutableEntry].getValue()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.TreeRangeMap$RangeMapEntry].getKey()"
    - "[com.google.common.collect.ImmutableEntry].getKey()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.LinkedListMultimap$Node].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.common.collect.HashBiMap$Inverse$1$InverseEntry].getKey()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getKey()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.SingletonImmutableSet].asList()"
    - "[com.google.common.collect.EmptyContiguousSet].asList()"
    - "[com.google.common.collect.ImmutableSortedSet].asList()"
    - "[com.google.common.collect.ImmutableCollection].asList()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].asList()"
    - "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    - "[java.util.Map].size()"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.Map$Entry].getKey()"
    functionUses: 1
    ICount: 38
    EdgeCount: 128
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:765"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:768"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:767"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getMapBindings()"
        - "builder()"
        - "entrySet()"
        - "size()"
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:774"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:780"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "getValue()"
        - "next()"
        - "get(com.google.inject.Key)"
        - "iterator()"
        - "getMapBindings()"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:779"
        BranchSideFuncs:
        - "getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
        - "build()"
        - "asList()"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:770,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:770,1"
      Dst: "[java.util.Map].size()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:772,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:774,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:774,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:774,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:774,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:775,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:775,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:775,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:775,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:776,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:780,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:783,1"
      Dst: "[com.google.common.collect.ImmutableCollection].asList()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:789,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getParametersInjectors(java.util.List,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 795
    functionLinenumberEnd: 818
    functionDepth: 12
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].of()"
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - "[com.google.inject.internal.RealMapBinder].createNullValueException(java.lang.Object,com.google.inject.Binding)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableBiMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableSortedMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    functionUses: 2
    ICount: 27
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:797"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:801"
        BranchSideFuncs:
        - "builder()"
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:804"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:817"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext)"
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:816"
        BranchSideFuncs:
        - "buildOrThrow()"
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:810"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:null"
        BranchSideFuncs:
        - "getMapBindings()"
        - "get(java.lang.Object)"
        - "createNullValueException(java.lang.Object,com.google.inject.Binding)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:799,1"
      Dst: "[com.google.common.collect.ImmutableMap].of()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:802,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:808,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:811,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapBindings()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:811,1"
      Dst: "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:811,1"
      Dst: "[com.google.inject.internal.RealMapBinder].createNullValueException(java.lang.Object,com.google.inject.Binding)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:814,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:817,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 821
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getBindingSelection()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 825
    functionLinenumberEnd: 827
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder$BindingSelection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: 832
    functionLinenumberEnd: 837
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    - "com.google.inject.spi.ProviderInstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.MapBinderBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:833"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:836"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:835"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ProviderInstanceBinding)"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:834,1"
      Dst: "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.MapBinderBinding)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:836,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getMapKey()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:842,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getAlternateMapKeys()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:848,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:849,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:850,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:851,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderSetMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:852,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:853,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderCollectionMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:854,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMultimapKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:855,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:847,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getKeyTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getKeyType()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:860,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getKeyType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getValueTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getValueType()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:865,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getValueType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getEntries()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntries()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:871"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:874"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:873"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:871,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:872,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntries()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:874,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].getEntries(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultimap].builder()"
    - "[com.google.common.collect.ImmutableMap].builder()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].matchesValueKey(com.google.inject.Key)"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getKey()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getValueKey()"
    - "[com.google.common.collect.ImmutableMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Builder].build()"
    - "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - "[com.google.common.collect.ImmutableMultimap].values()"
    - "[com.google.common.collect.Sets].newHashSet(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.Set].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets].difference(java.util.Set,java.util.Set)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.util.Set].isEmpty()"
    - "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Set].iterator()"
    - "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - "[com.google.inject.spi.Element].getSource()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.common.collect.ImmutableMultimap].entries()"
    - "[com.google.common.collect.ImmutableCollection].iterator()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    functionUses: 0
    ICount: 119
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:888"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:928"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:927"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:889"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:901"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:900"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:891"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:901"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:900"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:892"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:900"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:901"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:926"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:925"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:902"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:925"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:914"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:925"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:939"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:969"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:947"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:955"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:950"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:956"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:955"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:956"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:966"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:965"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:958"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:966"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:965"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:971"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:981"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:980"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:883,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:884,1"
      Dst: "[com.google.common.collect.ImmutableMap].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:888,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:888,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:888,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:891,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:891,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].matchesValueKey(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:892,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:892,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:897,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:902,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:902,1"
      Dst: "[com.google.inject.internal.RealMultibinder].containsElement(com.google.inject.spi.Element)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:911,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:921,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:921,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].getValueKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:921,1"
      Dst: "[com.google.common.collect.ImmutableMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:928,1"
      Dst: "[com.google.common.collect.ImmutableMultimap$Builder].build()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:929,1"
      Dst: "[com.google.common.collect.ImmutableMap$Builder].buildOrThrow()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:936,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].values()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:936,1"
      Dst: "[com.google.common.collect.Sets].newHashSet(java.lang.Iterable)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:937,1"
      Dst: "[com.google.common.collect.ImmutableMap].keySet()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:939,1"
      Dst: "[java.util.Set].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:941,1"
      Dst: "[com.google.common.collect.Sets].difference(java.util.Set,java.util.Set)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:945,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:947,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:949,1"
      Dst: "[com.google.inject.internal.Errors].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:948,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:950,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:952,1"
      Dst: "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:952,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:966,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:966,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:970,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:971,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].entries()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:971,1"
      Dst: "[com.google.common.collect.ImmutableCollection].iterator()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:972,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:978,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:978,1"
      Dst: "[com.google.common.collect.Maps].immutableEntry(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:979,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:981,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 13
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].permitsDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].permitsDuplicates()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:986"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:989"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:988"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:986,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:987,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].permitsDuplicates()"
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:989,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider:996,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.ProvidesIntoOptional$Type].values()"
    functionSourceFile: "com.google.inject.multibindings.ProvidesIntoOptional$Type"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.multibindings.ProvidesIntoOptional$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.EnumSet:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.ProvidesIntoOptional$Type:54,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.ProvidesIntoOptional$Type].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.multibindings.ProvidesIntoOptional$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.ProvidesIntoOptional$Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.ProvidesIntoOptional$Type:54,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.ProvidesIntoOptional$Type].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.multibindings.ProvidesIntoOptional$Type"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.ProvidesIntoOptional$Type:54,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.ProvidesIntoOptional$Type].$values()"
    functionSourceFile: "com.google.inject.multibindings.ProvidesIntoOptional$Type"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.multibindings.ProvidesIntoOptional$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen$1].<init>()"
    functionSourceFile: "com.google.inject.internal.BytecodeGen$1"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassValue].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen$1:173,1"
      Dst: "[java.lang.ClassValue].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BytecodeGen$1].computeValue(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.BytecodeGen$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].buildFastClass(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BytecodeGen$1:176,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].buildFastClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingletonScope].<init>()"
    functionSourceFile: "com.google.inject.internal.SingletonScope"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingletonScope].scope(com.google.inject.Key<T>,com.google.inject.Provider<T>)"
    functionSourceFile: "com.google.inject.internal.SingletonScope"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 3
    returnType: "com.google.inject.Provider<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.Provider<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SingletonScope$1].<init>(com.google.inject.internal.SingletonScope,com.google.inject.Key,com.google.inject.Provider)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingletonScope:100,1"
      Dst: "[com.google.inject.internal.SingletonScope$1].<init>(com.google.inject.internal.SingletonScope,com.google.inject.Key,com.google.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingletonScope].toString()"
    functionSourceFile: "com.google.inject.internal.SingletonScope"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32].onRemoval(com.google.common.cache.RemovalNotification)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.cache.RemovalNotification"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.WeakKeySet].cleanupOnRemoval(com.google.common.cache.RemovalNotification)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$cleanupOnRemoval__32:-1,1"
      Dst: "[com.google.inject.internal.WeakKeySet].cleanupOnRemoval(com.google.common.cache.RemovalNotification)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    functionSourceFile: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorBindingData].addScanner(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor:34,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor:34,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].addScanner(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    - Src: "com.google.inject.internal.ModuleAnnotatedMethodScannerProcessor:35,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].getDeclaredFields(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "java.lang.reflect.Field[]"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__79].bootstrap$()"
    - "[java.lang.Class].getDeclaredFields()"
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].bootstrap$()"
    - "[com.google.inject.internal.DeclaredMembers$getType__80].bootstrap$()"
    - "[com.google.inject.internal.DeclaredMembers$getName__81].bootstrap$()"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 1
    ICount: 14
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers:40,1"
      Dst: "[java.lang.Class].getDeclaredFields()"
    - Src: "com.google.inject.internal.DeclaredMembers:40,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "com.google.inject.internal.DeclaredMembers:40,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__79].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:42,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "com.google.inject.internal.DeclaredMembers:42,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getType__80].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:42,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__81].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:43,1"
      Dst: "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - Src: "com.google.inject.internal.DeclaredMembers:41,1"
      Dst: "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - Src: "com.google.inject.internal.DeclaredMembers:41,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:44,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__79].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__79"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__79].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__79:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__79].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__79].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__79"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__79:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__81].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__81"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__81].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__81:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__81].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__81].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__81"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__81:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].getDeclaredMethods(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__73].bootstrap$()"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].bootstrap$()"
    - "[com.google.inject.internal.DeclaredMembers$getReturnType__74].bootstrap$()"
    - "[com.google.inject.internal.DeclaredMembers$getName__75].bootstrap$()"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].bootstrap$()"
    - "[com.google.inject.internal.DeclaredMembers$getName__77].bootstrap$()"
    - "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - "[com.google.common.collect.Ordering].'from'(java.util.Comparator)"
    - "[com.google.common.collect.Ordering].lexicographical()"
    - "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 2
    ICount: 20
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers:48,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "com.google.inject.internal.DeclaredMembers:48,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "com.google.inject.internal.DeclaredMembers:48,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__73].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:50,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "com.google.inject.internal.DeclaredMembers:50,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getReturnType__74].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:50,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__75].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:51,1"
      Dst: "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - Src: "com.google.inject.internal.DeclaredMembers:51,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:51,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__77].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:55,1"
      Dst: "[com.google.common.collect.Ordering].'from'(java.util.Comparator)"
    - Src: "com.google.inject.internal.DeclaredMembers:56,1"
      Dst: "[com.google.common.collect.Ordering].lexicographical()"
    - Src: "com.google.inject.internal.DeclaredMembers:49,1"
      Dst: "[java.util.stream.Stream].sorted(java.util.Comparator)"
    - Src: "com.google.inject.internal.DeclaredMembers:49,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_2__78].bootstrap$()"
    - Src: "com.google.inject.internal.DeclaredMembers:57,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__73].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__73"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$getName__73].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__73:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$getName__73].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__73].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__73"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__73:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].<init>()"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$1(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.reflect.Method].getParameterTypes()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers:53,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.DeclaredMembers:53,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredFields$0(int)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Field[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$optionalConstructor__120].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$optionalConstructor__120"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].optionalConstructor(java.lang.reflect.Constructor)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$optionalConstructor__120:-1,1"
      Dst: "[com.google.inject.internal.Errors].optionalConstructor(java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$3].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Messages$3"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$3:223,1"
      Dst: "[com.google.inject.internal.Messages$Converter].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$3].toString(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.Messages$3"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].getAnnotation()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral,java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages$3:226"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$3:231"
        BranchSideFuncs:
        - "getAnnotation()"
        - "getAnnotationType()"
      - BranchSide: "com.google.inject.internal.Messages$3:230"
        BranchSideFuncs:
        - "toString()"
        - "getTypeLiteral()"
    - Branch String: "com.google.inject.internal.Messages$3:229"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages$3:226"
        BranchSideFuncs:
        - "getAnnotation()"
        - "getAnnotationType()"
    Callsites:
    - Src: "com.google.inject.internal.Messages$3:226,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.Messages$3:227,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.Messages$3:229,1"
      Dst: "[com.google.inject.Key].getAnnotation()"
    - Src: "com.google.inject.internal.Messages$3:229,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral,java.lang.Object)"
    - Src: "com.google.inject.internal.Messages$3:231,1"
      Dst: "[com.google.inject.TypeLiteral].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.Messages$3].toString(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$3"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$3].toString(com.google.inject.Key)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$3:223,1"
      Dst: "[com.google.inject.internal.Messages$3].toString(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup$1].get()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup$1"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].get()"
    - "[com.google.inject.internal.InjectorImpl$1].get()"
    - "[com.google.inject.spi.ProviderLookup$1].get()"
    - "[com.google.inject.internal.SingletonScope$1].get()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].get()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.util.Providers$ConstantProvider].get()"
    - "[com.google.inject.Provider].get()"
    functionUses: 7
    ICount: 9
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.inject.spi.ProviderLookup$1:110"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ProviderLookup$1:114"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.spi.ProviderLookup$1:113"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup$1:111,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.spi.ProviderLookup$1:114,1"
      Dst: "[com.google.inject.Provider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup$1].getDependencies()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup$1"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 7
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].getKey()"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup$1:121,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getKey()"
    - Src: "com.google.inject.spi.ProviderLookup$1:121,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.spi.ProviderLookup$1:121,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.spi.ProviderLookup$1:121,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.spi.ProviderLookup$1:121,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - Src: "com.google.inject.spi.ProviderLookup$1:122,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.spi.ProviderLookup$1:122,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].getKey()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getKey()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:64,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup$1].toString()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup$1"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].getKey()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    functionUses: 20
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup$1:127,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getKey()"
    - Src: "com.google.inject.spi.ProviderLookup$1:127,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.spi.ProviderLookup$1:127,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$6].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.Scoping$6"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$6:168,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$6].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$6"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$2].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.Scopes$3].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Indexer].visitScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.spi.BindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$6:171,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitScopeAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$6].getScopeAnnotation()"
    functionSourceFile: "com.google.inject.internal.Scoping$6"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$6].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$6"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$6:181,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$6"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].in(java.lang.Class)"
    - "[com.google.inject.binder.ScopedBindingBuilder].in(java.lang.Class)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$6:186,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].in(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex].lambda$add$0(com.google.inject.spi.InjectionPoint$Signature)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex"
    linkageType: ""
    functionLinenumber: 685
    functionLinenumberEnd: 687
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint$Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex:686,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitEagerSingleton()"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DefaultBindingScopingVisitor:40,1"
      Dst: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScope(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DefaultBindingScopingVisitor:45,1"
      Dst: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScopeAnnotation(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DefaultBindingScopingVisitor:50,1"
      Dst: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitNoScoping()"
    functionSourceFile: "com.google.inject.spi.DefaultBindingScopingVisitor"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DefaultBindingScopingVisitor:55,1"
      Dst: "[com.google.inject.spi.DefaultBindingScopingVisitor].visitOther()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$IncludeStackTraceOption].values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption:48,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$IncludeStackTraceOption].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption:48,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$IncludeStackTraceOption].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption:48,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$IncludeStackTraceOption].$values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$IncludeStackTraceOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder$1].<init>(com.google.inject.spi.Elements$RecordingBinder)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder$1"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Elements$RecordingBinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder$1:636,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder$1].annotatedWith(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder$1].annotatedWith(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.reflect.Types$JavaVersion$1].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$2].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:226,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:227,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    functionSourceFile: "com.google.common.reflect.Types$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    functionSourceFile: "com.google.common.reflect.Types$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.common.reflect.Types].toString(java.lang.reflect.Type)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 22
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:237,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:237,1"
      Dst: "[com.google.common.reflect.Types].toString(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:237,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:237,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    functionSourceFile: "com.google.common.reflect.Types$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 42
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:242,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Types$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    functionUses: 63
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$GenericArrayTypeImpl:247"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$GenericArrayTypeImpl:251"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "getGenericComponentType()"
      - BranchSide: "com.google.common.reflect.Types$GenericArrayTypeImpl:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:249,1"
      Dst: "[com.google.common.reflect.Types$GenericArrayTypeImpl].getGenericComponentType()"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:249,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.common.reflect.Types$GenericArrayTypeImpl:249,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding<T>)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "com.google.inject.internal.ProvisionListenerStackCallback<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].<init>(com.google.inject.Key,com.google.inject.Binding)"
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].hasListeners()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 6
    ICount: 19
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:75"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:74"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:72"
        BranchSideFuncs:
        - "hasListeners()"
        - "getUnchecked(java.lang.Object)"
        - "getKey()"
        - "<init>(com.google.inject.Key,com.google.inject.Binding)"
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:70,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:70,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:73,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].<init>(com.google.inject.Key,com.google.inject.Binding)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:73,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:74,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].hasListeners()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].<init>(com.google.inject.Key,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:118,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore].remove(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.AbstractCache].asMap()"
    - "[com.google.common.cache.ForwardingCache].asMap()"
    - "[com.google.common.cache.LocalCache$LocalManualCache:java.util.concurrent.ConcurrentHashMap].asMap()"
    - "[com.google.common.collect.ForwardingMap].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].remove(java.lang.Object)"
    - "[com.google.common.cache.LoadingCache].asMap()"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:88"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
        - "asMap()"
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:89,1"
      Dst: "[com.google.common.cache.LoadingCache].asMap()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:89,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore].create(com.google.inject.Binding<T>)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "com.google.inject.internal.ProvisionListenerStackCallback<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.inject.spi.ProvisionListenerBinding].getBindingMatcher()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.spi.ProvisionListenerBinding].getListeners()"
    - "[java.util.ArrayList].isEmpty()"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].emptyListener()"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].<init>(com.google.inject.Binding,java.util.List)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 25
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:97"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:105"
        BranchSideFuncs:
        - "matches(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getBindingMatcher()"
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:104"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:98"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:104"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:103"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:99"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:102"
        BranchSideFuncs:
        - "newArrayList()"
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:101"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
        - "getListeners()"
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:105"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:107"
        BranchSideFuncs:
        - "emptyListener()"
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore:105"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore:109"
        BranchSideFuncs:
        - "<init>(com.google.inject.Binding,java.util.List)"
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:97,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:97,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:97,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:98,1"
      Dst: "[com.google.inject.spi.ProvisionListenerBinding].getBindingMatcher()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:98,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:100,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:102,1"
      Dst: "[com.google.inject.spi.ProvisionListenerBinding].getListeners()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:102,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:105,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:108,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].emptyListener()"
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore:110,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].<init>(com.google.inject.Binding,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback].emptyListener()"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "com.google.inject.internal.ProvisionListenerStackCallback"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerStackCallback].<init>(com.google.inject.Binding,java.util.List)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerStackCallback"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binding"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.collect.Sets].newLinkedHashSet(java.lang.Iterable)"
    - "[java.util.HashSet].size()"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.Set].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerStackCallback:49"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:52"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ProvisionListenerStackCallback:51"
        BranchSideFuncs:
        - "newLinkedHashSet(java.lang.Iterable)"
        - "toArray(java.lang.Object[])"
        - "size()"
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:49,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:52,1"
      Dst: "[com.google.common.collect.Sets].newLinkedHashSet(java.lang.Iterable)"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:53,1"
      Dst: "[java.util.Set].size()"
    - Src: "com.google.inject.internal.ProvisionListenerStackCallback:53,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.NumberFormat].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.text.Collator].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.util.Calendar].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.util.Vector].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.Date].clone()"
    - "[java.util.TreeSet].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.Properties].clone()"
    - "[java.security.Signature].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.BitSet].clone()"
    - "[java.util.EnumMap].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 15
    ICount: 5
    EdgeCount: 45
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:401,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 407
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getOwnerType()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 410
    functionLinenumberEnd: 412
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].isFullySpecified()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 415
    functionLinenumberEnd: 431
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    functionUses: 2
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:416"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:420"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:419"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:416"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:420"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:419"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:420"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:424"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:423"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:424"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:430"
        BranchSideFuncs:
        - "isFullySpecified(java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:429"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:425"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:424"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:416,1"
      Dst: "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 437
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionUses: 63
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:435"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:435"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:434"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:436"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:436,1"
      Dst: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 442
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    - "[com.google.inject.internal.MoreTypes].hashCodeOrZero(java.lang.Object)"
    functionUses: 42
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:441,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:441,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:441,1"
      Dst: "[com.google.inject.internal.MoreTypes].hashCodeOrZero(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 445
    functionLinenumberEnd: 458
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 22
    ICount: 34
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:449"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:453"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:452"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:454"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:456"
        BranchSideFuncs:
        - "append(char)"
        - "toString()"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:446,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:447,1"
      Dst: "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:447,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:450,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.MoreTypes$ParameterizedTypeImpl:453,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115:-1,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    functionUses: 4
    ICount: 14
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.SourceProvider:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:67"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:66"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "com.google.inject.internal.util.SourceProvider:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:66"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:65"
        BranchSideFuncs:
        - "shouldBeSkipped(java.lang.String)"
    - Branch String: "com.google.inject.internal.util.SourceProvider:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:65"
        BranchSideFuncs:
        - "shouldBeSkipped(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:66,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - Src: "com.google.inject.internal.util.SourceProvider:67,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    - "org.aopalliance.intercept.MethodInterceptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MethodAspect:64,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.inject.internal.MethodAspect:64,1"
      Dst: "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MethodAspect].matches(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.MethodAspect"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MethodAspect:68,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule$Signature"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 56
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule$Signature:259"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:263"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:262"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule$Signature:261"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:259"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProviderMethodsModule$Signature:261"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule$Signature:259"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:261,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ProviderMethodsModule$Signature:261,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ProviderMethodsModule$Signature].hashCode()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule$Signature"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].<init>()"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].listOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.reflect.ParameterizedType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:96,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.util.Types"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 4
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Types:146,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder].<init>()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder"
    linkageType: ""
    functionLinenumber: 5
    functionLinenumberEnd: 7
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:6,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder].findCaller(java.util.function.Predicate<String>)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder"
    linkageType: ""
    functionLinenumber: 11
    functionLinenumberEnd: 16
    functionDepth: 2
    returnType: "java.lang.StackTraceElement"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].bootstrap$(java.util.function.Predicate)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].bootstrap$()"
    - "[java.lang.StackWalker].walk(java.util.function.Function)"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].bootstrap$()"
    - "[java.util.Optional].map(java.util.function.Function)"
    - "[java.util.Optional].orElseThrow(java.util.function.Supplier)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:12,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$lambda_findCaller_1__155].bootstrap$(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[java.lang.StackWalker].walk(java.util.function.Function)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:13,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].bootstrap$()"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:14,1"
      Dst: "[java.util.Optional].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:14,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].bootstrap$()"
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder:15,1"
      Dst: "[java.util.Optional].orElseThrow(java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156:-1,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].<init>()"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider].<init>(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider].<init>(com.google.inject.internal.util.SourceProvider,java.lang.Iterable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:44,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].<init>(com.google.inject.internal.util.SourceProvider,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider].<init>(com.google.inject.internal.util.SourceProvider,java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.util.SourceProvider"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableSet].builder()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.ImmutableSet$CachingAsList:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.nio.file.Path:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.ServiceLoader:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.SynchronousQueue].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 19
    EdgeCount: 266
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.SourceProvider:51"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:56"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "shouldBeSkipped(java.lang.String)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:55"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.util.SourceProvider:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:53"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:52"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "com.google.inject.internal.util.SourceProvider:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:55"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.util.SourceProvider:50,1"
      Dst: "[com.google.common.collect.ImmutableSet].builder()"
    - Src: "com.google.inject.internal.util.SourceProvider:51,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.internal.util.SourceProvider:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.util.SourceProvider:51,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.util.SourceProvider:52,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - Src: "com.google.inject.internal.util.SourceProvider:53,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.util.SourceProvider:56,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.util.SourceProvider].plusSkippedClasses(java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "com.google.inject.internal.util.SourceProvider"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider].<init>(com.google.inject.internal.util.SourceProvider,java.lang.Iterable)"
    - "[com.google.inject.internal.util.SourceProvider].asStrings(java.lang.Class[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:61,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].asStrings(java.lang.Class[])"
    - Src: "com.google.inject.internal.util.SourceProvider:61,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].<init>(com.google.inject.internal.util.SourceProvider,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.SourceProvider].asStrings(java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.SourceProvider:73"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:72,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.util.SourceProvider:74,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.SourceProvider:74,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.SourceProvider].getFromClassNames(java.util.List<String>)"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.util.List<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 127
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.SourceProvider:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:95"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "shouldBeSkipped(java.lang.String)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:94"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.SourceProvider:91"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.SourceProvider:94"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.String,java.lang.String,int)"
      - BranchSide: "com.google.inject.internal.util.SourceProvider:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:89,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.util.SourceProvider:90,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.util.SourceProvider:90,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.util.SourceProvider:90,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.util.SourceProvider:91,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].shouldBeSkipped(java.lang.String)"
    - Src: "com.google.inject.internal.util.SourceProvider:92,1"
      Dst: "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.SourceProvider].loadCallerFinder()"
    functionSourceFile: "com.google.inject.internal.util.SourceProvider"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "com.google.inject.internal.util.CallerFinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.DirectStackWalkerFinder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.SourceProvider:99,1"
      Dst: "[com.google.inject.internal.util.DirectStackWalkerFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].get(com.google.inject.TypeLiteral<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "com.google.inject.internal.MembersInjectorImpl<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].get(java.lang.Object,com.google.inject.internal.Errors)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:69,1"
      Dst: "[com.google.inject.internal.FailableCache].get(java.lang.Object,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].remove(com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].remove(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:82,1"
      Dst: "[com.google.inject.internal.FailableCache].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].createWithListeners(com.google.inject.TypeLiteral<T>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 117
    functionDepth: 3
    returnType: "com.google.inject.internal.MembersInjectorImpl<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.ConfigurationException].getPartialValue()"
    - "[com.google.inject.internal.MembersInjectorStore].getInjectors(java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.internal.EncounterImpl].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Lookups)"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.inject.spi.TypeListenerBinding].getListener()"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[com.google.inject.spi.TypeListenerBinding].getTypeMatcher()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].matches(java.lang.Object)"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].matches(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.inject.internal.Errors].errorNotifyingTypeListener(com.google.inject.spi.TypeListenerBinding,com.google.inject.TypeLiteral,java.lang.Throwable)"
    - "[com.google.inject.internal.EncounterImpl].invalidate()"
    - "[com.google.inject.internal.MembersInjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,com.google.inject.internal.EncounterImpl,com.google.common.collect.ImmutableList)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[com.google.inject.spi.TypeListener].hear(com.google.inject.TypeLiteral,com.google.inject.spi.TypeEncounter)"
    functionUses: 1
    ICount: 42
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorStore:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:113"
        BranchSideFuncs:
        - "hasNext()"
        - "contains(java.lang.Object)"
        - "next()"
        - "matches(java.lang.Object)"
        - "getTypeMatcher()"
        - "iterator()"
        - "getListener()"
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:112"
        BranchSideFuncs:
        - "throwIfNewErrors(int)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,com.google.inject.internal.EncounterImpl,com.google.common.collect.ImmutableList)"
        - "invalidate()"
    - Branch String: "com.google.inject.internal.MembersInjectorStore:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:112"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "errorNotifyingTypeListener(com.google.inject.spi.TypeListenerBinding,com.google.inject.TypeLiteral,java.lang.Throwable)"
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:111"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorStore:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:112"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "errorNotifyingTypeListener(com.google.inject.spi.TypeListenerBinding,com.google.inject.TypeLiteral,java.lang.Throwable)"
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:88,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.MembersInjectorStore:92,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MembersInjectorStore:94,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.MembersInjectorStore:94,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.internal.MembersInjectorStore:95,1"
      Dst: "[com.google.inject.ConfigurationException].getPartialValue()"
    - Src: "com.google.inject.internal.MembersInjectorStore:97,1"
      Dst: "[com.google.inject.internal.MembersInjectorStore].getInjectors(java.util.Set,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.MembersInjectorStore:98,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.MembersInjectorStore:100,1"
      Dst: "[com.google.inject.internal.EncounterImpl].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Lookups)"
    - Src: "com.google.inject.internal.MembersInjectorStore:101,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.internal.MembersInjectorStore:102,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.MembersInjectorStore:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MembersInjectorStore:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MembersInjectorStore:103,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].getListener()"
    - Src: "com.google.inject.internal.MembersInjectorStore:104,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:104,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].getTypeMatcher()"
    - Src: "com.google.inject.internal.MembersInjectorStore:104,1"
      Dst: "[com.google.inject.matcher.Matcher].matches(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:105,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:107,1"
      Dst: "[com.google.inject.spi.TypeListener].hear(com.google.inject.TypeLiteral,com.google.inject.spi.TypeEncounter)"
    - Src: "com.google.inject.internal.MembersInjectorStore:109,1"
      Dst: "[com.google.inject.internal.Errors].errorNotifyingTypeListener(com.google.inject.spi.TypeListenerBinding,com.google.inject.TypeLiteral,java.lang.Throwable)"
    - Src: "com.google.inject.internal.MembersInjectorStore:113,1"
      Dst: "[com.google.inject.internal.EncounterImpl].invalidate()"
    - Src: "com.google.inject.internal.MembersInjectorStore:116,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,com.google.inject.internal.EncounterImpl,com.google.common.collect.ImmutableList)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.EncounterImpl].<init>(com.google.inject.internal.Errors,com.google.inject.internal.Lookups)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.internal.Lookups"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].invalidate()"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,com.google.inject.internal.EncounterImpl,com.google.common.collect.ImmutableList)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.internal.EncounterImpl"
    - "com.google.common.collect.ImmutableList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.common.collect.SingletonImmutableSet].asList()"
    - "[com.google.common.collect.EmptyContiguousSet].asList()"
    - "[com.google.common.collect.ImmutableSortedSet].asList()"
    - "[com.google.common.collect.ImmutableCollection].asList()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].asList()"
    - "[com.google.inject.internal.EncounterImpl].getMembersInjectors()"
    - "[com.google.common.collect.ImmutableEnumSet].isEmpty()"
    - "[com.google.inject.internal.EncounterImpl].getInjectionListeners()"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.RegularContiguousSet:java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.EncounterImpl].getAspects()"
    - "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    functionUses: 1
    ICount: 40
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:51"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:48"
        BranchSideFuncs:
        - "getMembersInjectors()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:47"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:53"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:51"
        BranchSideFuncs:
        - "getMembersInjectors()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:50"
        BranchSideFuncs:
        - "getMembersInjectors()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:55"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:57"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:56"
        BranchSideFuncs:
        - "getInjectionListeners()"
        - "asList()"
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:61"
        BranchSideFuncs:
        - "getAspects()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:60"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:59"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:61"
        BranchSideFuncs:
        - "getAspects()"
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:51,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:53,1"
      Dst: "[com.google.inject.internal.EncounterImpl].getMembersInjectors()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:53,1"
      Dst: "[com.google.common.collect.ImmutableCollection].asList()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:55,1"
      Dst: "[com.google.inject.internal.EncounterImpl].getInjectionListeners()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:59,1"
      Dst: "[com.google.inject.internal.InternalFlags].isBytecodeGenEnabled()"
    - Src: "com.google.inject.internal.MembersInjectorImpl:59,1"
      Dst: "[com.google.inject.internal.EncounterImpl].getAspects()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.EncounterImpl].getMembersInjectors()"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:74"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:76"
        BranchSideFuncs:
        - "of()"
      - BranchSide: "com.google.inject.internal.EncounterImpl:75"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:75,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.EncounterImpl:76,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.EncounterImpl].getInjectionListeners()"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:82"
        BranchSideFuncs:
        - "of()"
      - BranchSide: "com.google.inject.internal.EncounterImpl:81"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:81,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.EncounterImpl:82,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.EncounterImpl].getAspects()"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:56"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:55"
        BranchSideFuncs:
        - "of()"
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:56,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    - Src: "com.google.inject.internal.EncounterImpl:56,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MembersInjectorStore].getInjectors(java.util.Set<InjectionPoint>,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 139
    functionDepth: 9
    returnType: "com.google.common.collect.ImmutableList<SingleMemberInjector>"
    argCount: 2
    argTypes:
    - "java.util.Set<InjectionPoint>"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.spi.InjectionPoint].isOptional()"
    - "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.SingleFieldInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.SingleMethodInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 34
    EdgeCount: 206
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorStore:123"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:138"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isOptional()"
        - "next()"
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:137"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    - Branch String: "com.google.inject.internal.MembersInjectorStore:126"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:128"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:127"
        BranchSideFuncs:
        - "withSource(java.lang.Object)"
    - Branch String: "com.google.inject.internal.MembersInjectorStore:130"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:132"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MembersInjectorStore:131"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:122,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.MembersInjectorStore:123,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.MembersInjectorStore:123,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MembersInjectorStore:123,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MembersInjectorStore:126,1"
      Dst: "[com.google.inject.spi.InjectionPoint].isOptional()"
    - Src: "com.google.inject.internal.MembersInjectorStore:127,1"
      Dst: "[com.google.inject.internal.Errors].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:128,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:130,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.MembersInjectorStore:131,1"
      Dst: "[com.google.inject.internal.SingleFieldInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.MembersInjectorStore:132,1"
      Dst: "[com.google.inject.internal.SingleMethodInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.MembersInjectorStore:133,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorStore:138,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.SingleFieldInjector].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.SingleFieldInjector"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[com.google.common.base.Joiner$3:com.google.common.collect.RegularImmutableList:com.google.inject.spi.InjectionPoint:java.util.AbstractSequentialList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].getDependencies()"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 48
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleFieldInjector:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.SingleFieldInjector:34,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.SingleFieldInjector:35,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.internal.SingleFieldInjector:35,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.SingleFieldInjector:38,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "com.google.inject.internal.SingleFieldInjector:39,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.SingleFieldInjector:39,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingOrThrow(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorStore].lambda$getAllInjectionPoints$0(java.util.Map$Entry)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorStore"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.internal.MembersInjectorImpl].getInjectionPoints()"
    - "[java.util.Collection].stream()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorStore:145,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.MembersInjectorStore:145,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].getInjectionPoints()"
    - Src: "com.google.inject.internal.MembersInjectorStore:145,1"
      Dst: "[java.util.Collection].stream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$1(java.util.List,com.google.inject.spi.ErrorDetail)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_1__151:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$formatDetail$1(java.util.List,com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].<init>(java.lang.Class)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].computeHashCode()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key:75,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - Src: "com.google.inject.Key:78,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.Key:78,1"
      Dst: "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - Src: "com.google.inject.Key:77,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.Key:79,1"
      Dst: "[com.google.inject.Key].computeHashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].<init>(java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].computeHashCode()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:93,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key:95,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:98,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.Key:98,1"
      Dst: "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - Src: "com.google.inject.Key:97,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.Key:99,1"
      Dst: "[com.google.inject.Key].computeHashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].<init>()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].computeHashCode()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.Key:117,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.Key:117,1"
      Dst: "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class)"
    - Src: "com.google.inject.Key:116,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.Key:118,1"
      Dst: "[com.google.inject.Key].computeHashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].hasAnnotationType()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Key:165"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Key:165,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Key].getAnnotationName()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key$AnnotationStrategy].getAnnotation()"
    - "[java.lang.annotation.Annotation].toString()"
    - "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    - "[java.lang.Class].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Key:170"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:175"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Key:169,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].getAnnotation()"
    - Src: "com.google.inject.Key:171,1"
      Dst: "[java.lang.annotation.Annotation].toString()"
    - Src: "com.google.inject.Key:175,1"
      Dst: "[com.google.inject.Key$AnnotationStrategy].getAnnotationType()"
    - Src: "com.google.inject.Key:175,1"
      Dst: "[java.lang.Class].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].getRawType()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:179,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].providerKey()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].providerType()"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:184,1"
      Dst: "[com.google.inject.TypeLiteral].providerType()"
    - Src: "com.google.inject.Key:184,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].providerType()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:125,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.TypeLiteral:125,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:125,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].toString()"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 20
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Key:210"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:214"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Key:211,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.Key].get(java.lang.Class,com.google.inject.Key$AnnotationStrategy)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "com.google.inject.Key$AnnotationStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:219,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 6
    returnType: "com.google.inject.Key<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:224,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.Class<T>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key<T>"
    argCount: 2
    argTypes:
    - "java.lang.Class<T>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:229,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - Src: "com.google.inject.Key:229,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.Class<T>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 6
    returnType: "com.google.inject.Key<T>"
    argCount: 2
    argTypes:
    - "java.lang.Class<T>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:234,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:234,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key<?>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:239,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.reflect.Type,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key<?>"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:244,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - Src: "com.google.inject.Key:244,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(java.lang.reflect.Type,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key<?>"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:249,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:249,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 3
    returnType: "com.google.inject.Key<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:254,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(com.google.inject.TypeLiteral<T>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "com.google.inject.Key<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:260,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - Src: "com.google.inject.Key:260,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].get(com.google.inject.TypeLiteral<T>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionDepth: 4
    returnType: "com.google.inject.Key<T>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:265,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:265,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].ofType(java.lang.Class<U>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Key<U>"
    argCount: 1
    argTypes:
    - "java.lang.Class<U>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:274,1"
      Dst: "[com.google.inject.Key].<init>(java.lang.reflect.Type,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral<U>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 3
    returnType: "com.google.inject.Key<U>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<U>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 22
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:292,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].withAnnotation(java.lang.Class<? extends\
      \ Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "com.google.inject.Key<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:304,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.Class)"
    - Src: "com.google.inject.Key:304,1"
      Dst: "[com.google.inject.Key].<init>(com.google.inject.TypeLiteral,com.google.inject.Key$AnnotationStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].strategyFor(java.lang.Class<? extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "com.google.inject.Key$AnnotationStrategy"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.Class)"
    - "[com.google.inject.internal.Annotations].isAllDefaultMethods(java.lang.Class)"
    - "[com.google.inject.internal.Annotations].generateAnnotation(java.lang.Class)"
    - "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Key].ensureRetainedAtRuntime(java.lang.Class)"
    - "[com.google.inject.Key].ensureIsBindingAnnotation(java.lang.Class)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.Key:364"
      Branch Sides:
      - BranchSide: "com.google.inject.Key:368"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.Key:367"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.Key:363,1"
      Dst: "[com.google.inject.internal.Annotations].canonicalizeIfNamed(java.lang.Class)"
    - Src: "com.google.inject.Key:364,1"
      Dst: "[com.google.inject.internal.Annotations].isAllDefaultMethods(java.lang.Class)"
    - Src: "com.google.inject.Key:365,1"
      Dst: "[com.google.inject.internal.Annotations].generateAnnotation(java.lang.Class)"
    - Src: "com.google.inject.Key:365,1"
      Dst: "[com.google.inject.Key].strategyFor(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.Key:368,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.Key:369,1"
      Dst: "[com.google.inject.Key].ensureRetainedAtRuntime(java.lang.Class)"
    - Src: "com.google.inject.Key:370,1"
      Dst: "[com.google.inject.Key].ensureIsBindingAnnotation(java.lang.Class)"
    - Src: "com.google.inject.Key:371,1"
      Dst: "[com.google.inject.Key$AnnotationTypeStrategy].<init>(java.lang.Class,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].ensureRetainedAtRuntime(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 380
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.Annotations].isRetainedAtRuntime(java.lang.Class)"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:376,1"
      Dst: "[com.google.inject.internal.Annotations].isRetainedAtRuntime(java.lang.Class)"
    - Src: "com.google.inject.Key:378,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.Key:375,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key].ensureIsBindingAnnotation(java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.Key"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 387
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.Annotations].isBindingAnnotation(java.lang.Class)"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key:383,1"
      Dst: "[com.google.inject.internal.Annotations].isBindingAnnotation(java.lang.Class)"
    - Src: "com.google.inject.Key:385,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.Key:382,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].visit(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 292
    functionDepth: 3
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.common.collect.CompactHashSet].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].remove(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$KeySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$Entries].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntrySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.Binding)"
    - "[com.google.inject.util.Modules$OverrideModule].getScopeInstanceOrNull(com.google.inject.Binding)"
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].bootstrap$()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.concurrent.ConcurrentHashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.security.Provider].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Hashtable].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.concurrent.ConcurrentMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.cache.LocalCache].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.HashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[java.util.Properties].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[com.google.inject.spi.Element].getSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:279"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:291"
        BranchSideFuncs:
        - "getScopeInstanceOrNull(com.google.inject.Binding)"
        - "visit(com.google.inject.Binding)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:290"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:284"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:291"
        BranchSideFuncs:
        - "computeIfAbsent(java.lang.Object,java.util.function.Function)"
        - "add(java.lang.Object)"
        - "getSource()"
        - "bootstrap$()"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:279,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:279,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:280,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.Binding)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:283,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule].getScopeInstanceOrNull(com.google.inject.Binding)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:285,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].bootstrap$()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:286,1"
      Dst: "[java.util.Map].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:287,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:287,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].bootstrap$()"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53:-1,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].<init>()"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 319
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.spi.PrivateElements"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PrivateElementsImpl].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].newPrivateBinder()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.common.collect.Sets].newHashSet()"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.CompactHashSet].remove(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].remove(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].remove(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].remove(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].remove(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].remove(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$KeySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].remove(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$1].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$Entries].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].remove(java.lang.Object)"
    - "[com.google.common.collect.Maps$EntrySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].remove(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].expose(com.google.inject.Key)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedSource(com.google.inject.Key)"
    - "[com.google.inject.internal.PrivateElementsImpl].getElements()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.util.Modules$OverrideModule$2].rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
    - "[com.google.inject.internal.LinkedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ExposedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.MembersInjectorLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.UntargettedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.StaticInjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Message].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeConverterBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.PrivateElementsImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProvisionListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ConstructorBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ScopeBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InterceptorBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProviderLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Element].getSource()"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].newPrivateBinder()"
    - "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    - "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    - "[com.google.inject.spi.PrivateElements].getElements()"
    - "[java.util.List].iterator()"
    - "[com.google.inject.Binding].getKey()"
    - "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    functionUses: 2
    ICount: 43
    EdgeCount: 457
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:300"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:308"
        BranchSideFuncs:
        - "getExposedKeys()"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:307"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getElements()"
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:301"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:304"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:303"
        BranchSideFuncs:
        - "getExposedSource(com.google.inject.Key)"
        - "withSource(java.lang.Object)"
        - "expose(com.google.inject.Key)"
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:308"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:318"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "remove(java.lang.Object)"
        - "getElements()"
        - "getKey()"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:317"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:309"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:312"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:311"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:309"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:312"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:311"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Modules$OverrideModule$2:312"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:316"
        BranchSideFuncs:
        - "rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
      - BranchSide: "com.google.inject.util.Modules$OverrideModule$2:315"
        BranchSideFuncs:
        - "applyTo(com.google.inject.Binder)"
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:296,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:296,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:296,1"
      Dst: "[com.google.inject.Binder].newPrivateBinder()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:298,1"
      Dst: "[com.google.common.collect.Sets].newHashSet()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:300,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:300,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:300,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:300,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:301,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:302,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:304,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedSource(com.google.inject.Key)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:304,1"
      Dst: "[com.google.inject.PrivateBinder].withSource(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:304,1"
      Dst: "[com.google.inject.PrivateBinder].expose(com.google.inject.Key)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:308,1"
      Dst: "[com.google.inject.spi.PrivateElements].getElements()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:308,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:309,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:313,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2].rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
    - Src: "com.google.inject.util.Modules$OverrideModule$2:316,1"
      Dst: "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 324
    functionDepth: 2
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$OverrideModule$2].rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:322,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2].rewrite(com.google.inject.Binder,com.google.inject.spi.PrivateElements,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].visit(com.google.inject.spi.ScopeBinding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ScopeBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:328,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2].lambda$visit$0(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2:286,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$2].configure()"
    functionSourceFile: "com.google.inject.util.Modules$2"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 414
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.AbstractModule].binder()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 149
    BranchProfiles:
    - Branch String: "com.google.inject.util.Modules$2:410"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Modules$2:413"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "applyTo(com.google.inject.Binder)"
        - "next()"
        - "binder()"
      - BranchSide: "com.google.inject.util.Modules$2:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Modules$2:410,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.util.Modules$2:410,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.util.Modules$2:410,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.util.Modules$2:411,1"
      Dst: "[com.google.inject.AbstractModule].binder()"
    - Src: "com.google.inject.util.Modules$2:411,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionDepth: 1
    returnType: "org.objectweb.asm.MethodVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader:174"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:177"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:176"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:177,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:179,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:216,1"
      Dst: "[org.objectweb.asm.MethodVisitor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitSource(java.lang.String,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitLineNumber(int,org.objectweb.asm.Label)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader:188"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:192"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:191"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader:193"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:197"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:194,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:194,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "org.objectweb.asm.FieldVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitAnnotation(java.lang.String,boolean)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:207,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.AnnotationVisitor].<init>(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor:247,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitParameterAnnotation(int,java.lang.String,boolean)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader:211,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl$1].call()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl$1"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl$1:96,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getMethod()"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getArguments()"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getThis()"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getStaticPart()"
    functionSourceFile: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.reflect.AccessibleObject"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getMethod()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation:100,1"
      Dst: "[com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation].getMethod()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleFieldInjector].getInjectionPoint()"
    functionSourceFile: "com.google.inject.internal.SingleFieldInjector"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleFieldInjector].inject(com.google.inject.internal.InternalContext,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.SingleFieldInjector"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 2
    ICount: 19
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleFieldInjector:50,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.SingleFieldInjector:50,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.SingleFieldInjector:51,1"
      Dst: "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.SingleFieldInjector:53,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - Src: "com.google.inject.internal.SingleFieldInjector:55,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor].visit(com.google.inject.spi.TypeConverterBinding)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.TypeConverterBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.TypeConverterBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeConverterBinding:66,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.TypeConverterBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].convertToTypes(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.inject.spi.TypeConverterBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].convertToTypes(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    functionUses: 4
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeConverterBinding:71,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].getSource()"
    - Src: "com.google.inject.spi.TypeConverterBinding:71,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.TypeConverterBinding:71,1"
      Dst: "[com.google.inject.Binder].convertToTypes(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.TypeConverterBinding].toString()"
    functionSourceFile: "com.google.inject.spi.TypeConverterBinding"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.spi.TypeConverter,com.google.inject.matcher.Matcher,java.lang.Object)"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.TypeConverterBinding:80,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.spi.TypeConverterBinding:80,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.spi.TypeConverter,com.google.inject.matcher.Matcher,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor$contains__64].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$contains__64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$2].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractBaseGraph$1].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$SubSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Entries].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5].contains(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork$1$1].contains(java.lang.Object)"
    - "[com.google.common.graph.EdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.Maps$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.graph.MapIteratorCache$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$5$1$1].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Multisets$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$4].contains(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$3].contains(java.lang.Object)"
    - "[com.google.common.collect.ConcurrentHashMultiset$1].contains(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].contains(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$2].contains(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.graph.IncidentEdgeSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.graph.MultiEdgesConnecting].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 25
    ICount: 6
    EdgeCount: 61
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$contains__64:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$2(java.util.List)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$2(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].lambda$formatDetail$2(java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Shorts$ShortArrayAsList:java.util.AbstractCollection:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 7
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationError:63"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:62"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:63,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.name.Names].<init>()"
    functionSourceFile: "com.google.inject.name.Names"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.name.Names:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.name.Names].bindProperties(com.google.inject.Binder,java.util.Map<String,String>)"
    functionSourceFile: "com.google.inject.name.Names"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.util.Map<String,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    - "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.name.Names:42"
      Branch Sides:
      - BranchSide: "com.google.inject.name.Names:47"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.name.Names:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.name.Names:41,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - Src: "com.google.inject.name.Names:42,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.name.Names:42,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.name.Names:42,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.name.Names:42,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.name.Names:43,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.name.Names:44,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.name.Names:45,1"
      Dst: "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    - Src: "com.google.inject.name.Names:45,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.name.Names:45,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.name.Names:45,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.name.Names].bindProperties(com.google.inject.Binder,java.util.Properties)"
    functionSourceFile: "com.google.inject.name.Names"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.Binder"
    - "java.util.Properties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - "[java.util.Properties].propertyNames()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    - "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.name.Names:57"
      Branch Sides:
      - BranchSide: "com.google.inject.name.Names:62"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.name.Names:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.name.Names:54,1"
      Dst: "[com.google.inject.Binder].skipSources(java.lang.Class[])"
    - Src: "com.google.inject.name.Names:57,1"
      Dst: "[java.util.Properties].propertyNames()"
    - Src: "com.google.inject.name.Names:57,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "com.google.inject.name.Names:58,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "com.google.inject.name.Names:59,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "com.google.inject.name.Names:60,1"
      Dst: "[com.google.inject.name.NamedImpl].<init>(java.lang.String)"
    - Src: "com.google.inject.name.Names:60,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.name.Names:60,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.name.Names:60,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ExposedKeyFactory].notify(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ExposedKeyFactory"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.PrivateElementsImpl].getInjector()"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.Errors].exposedButNotBound(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.spi.PrivateElements].getInjector()"
    functionUses: 2
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ExposedKeyFactory:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ExposedKeyFactory:50"
        BranchSideFuncs:
        - "getSource()"
        - "exposedButNotBound(com.google.inject.Key)"
        - "withSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ExposedKeyFactory:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedKeyFactory:39,1"
      Dst: "[com.google.inject.spi.PrivateElements].getInjector()"
    - Src: "com.google.inject.internal.ExposedKeyFactory:40,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ExposedKeyFactory:40,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getExplicitBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.ExposedKeyFactory:45,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.ExposedKeyFactory:46,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ExposedKeyFactory:46,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.ExposedKeyFactory:46,1"
      Dst: "[com.google.inject.internal.Errors].exposedButNotBound(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.ExposedKeyFactory"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 12
    ICount: 8
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ExposedKeyFactory:57,1"
      Dst: "[com.google.inject.internal.BindingImpl].getInternalFactory()"
    - Src: "com.google.inject.internal.ExposedKeyFactory:57,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireExplicitBindingsModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$RequireExplicitBindingsModule"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 431
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].requireExplicitBindings()"
    - "[com.google.inject.Binder].requireExplicitBindings()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireExplicitBindingsModule:429,1"
      Dst: "[com.google.inject.Binder].requireExplicitBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$BytecodeGenOption].values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$BytecodeGenOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$BytecodeGenOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$BytecodeGenOption:110,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$BytecodeGenOption].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$BytecodeGenOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$BytecodeGenOption"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$BytecodeGenOption:110,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$BytecodeGenOption].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$BytecodeGenOption"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$BytecodeGenOption:110,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$BytecodeGenOption].$values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$BytecodeGenOption"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$BytecodeGenOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142:-1,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].<init>()"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError].lambda$formatDetail$0(com.google.inject.spi.ErrorDetail)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142:-1,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError].lambda$formatDetail$0(com.google.inject.spi.ErrorDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError].lambda$formatDetail$0(com.google.inject.spi.ErrorDetail)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError:39,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarLookingTypes(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].bootstrap$()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:68,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].bootstrap$()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:68,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction<Class<?>,Class<?>,Boolean>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.reflect.Type"
    - "java.util.function.BiFunction<Class<?>,Class<?>,Boolean>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__184].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__180].apply(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__176].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl:com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    functionUses: 9
    ICount: 125
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:78"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:81"
        BranchSideFuncs:
        - "booleanValue()"
        - "apply(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:80"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:78"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:81"
        BranchSideFuncs:
        - "booleanValue()"
        - "apply(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:80"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:81"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:99"
        BranchSideFuncs:
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:98"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:81"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:99"
        BranchSideFuncs:
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:98"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:84"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:87"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:86"
        BranchSideFuncs:
        - "getActualTypeArguments()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:92"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:91"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:97"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:96"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:92"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:91"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:99"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:105"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:104"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:99"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:105"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:104"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:105"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:132"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:131"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:105"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:132"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:131"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:110"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:113"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:112"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:113"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:118"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:117"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:114"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:113"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:112"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:120"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:123"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:122"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:123"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:128"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:127"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:124"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:123"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:122"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:132"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:148"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:147"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:133"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:133"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:132"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:134"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:133"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "getLowerBounds()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:132"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:140"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:140"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:141"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:147"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:141"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:147"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:143"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:79,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:79,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:84,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:84,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarTypes(java.lang.reflect.Type,java.lang.reflect.Type,java.util.function.BiFunction)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:87,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:103,1"
      Dst: "[java.lang.reflect.GenericArrayType].getGenericComponentType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:108,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:118,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:143,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 50
    CyclomaticComplexity: 14
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].convertToLatterViaJvmAnnotations(com.google.inject.TypeLiteral<?>,com.google.inject.TypeLiteral<?>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 184
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    - "com.google.inject.TypeLiteral<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].startsWith(java.lang.String,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 53
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:163"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:183"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:182"
        BranchSideFuncs:
        - "toString()"
        - "replaceAll(java.lang.String,java.lang.String)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:163"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:183"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:182"
        BranchSideFuncs:
        - "toString()"
        - "replaceAll(java.lang.String,java.lang.String)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:164"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:null"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:165"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:168"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:167"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:168"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:171"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:170"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:171"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:174"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:173"
        BranchSideFuncs:
        - "startsWith(java.lang.String,int)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:174"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:null"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "length()"
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:159,1"
      Dst: "[com.google.inject.TypeLiteral].toString()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:163,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:164,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:165,1"
      Dst: "[java.lang.String].startsWith(java.lang.String,int)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:166,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:179,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:183,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:183,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].wasBoundInKotlin(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isKotlinClass(java.lang.Class)"
    - "[java.lang.StackTraceElement].getFileName()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[com.google.inject.spi.Element].getSource()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[com.google.inject.internal.KotlinSupportInterface].isKotlinClass(java.lang.Class)"
    functionUses: 2
    ICount: 25
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:187"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:204"
        BranchSideFuncs:
        - "getDeclaringSource()"
        - "getSource()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:203"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:190"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:196"
        BranchSideFuncs:
        - "isKotlinClass(java.lang.Class)"
        - "getDeclaringClass()"
        - "getInstance()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:195"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:192"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:196"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:195"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:196"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:204"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:203"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:198"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:204"
        BranchSideFuncs:
        - "getFileName()"
        - "endsWith(java.lang.String)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:203"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:199"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:204"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:187,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:189,1"
      Dst: "[com.google.inject.spi.ElementSource].getDeclaringSource()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:192,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:192,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:192,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].isKotlinClass(java.lang.Class)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:198,1"
      Dst: "[java.lang.StackTraceElement].getFileName()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:199,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].isInjectionFromKotlin(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 219
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isKotlinClass(java.lang.Class)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    - "[com.google.inject.internal.KotlinSupportInterface].isKotlinClass(java.lang.Class)"
    functionUses: 1
    ICount: 18
    EdgeCount: 156
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:208"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:218"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:217"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:209"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:212"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:211"
        BranchSideFuncs:
        - "getInjectionPoint()"
        - "getMember()"
        - "isKotlinClass(java.lang.Class)"
        - "getInstance()"
        - "getDeclaringClass()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:214"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:217"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:208,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:208,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:213,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:214,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:214,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:214,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:214,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].isKotlinClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].getSuggestions(com.google.inject.Key<T>,com.google.inject.Injector,java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 344
    functionDepth: 7
    returnType: "com.google.common.collect.ImmutableList<String>"
    argCount: 3
    argTypes:
    - "com.google.inject.Key<T>"
    - "com.google.inject.Injector"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.spi.BindingSourceRestriction].getMissingImplementationSuggestion(com.google.inject.internal.GuiceInternal,com.google.inject.Key)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$add__169].bootstrap$(com.google.common.collect.ImmutableList$Builder)"
    - "[java.util.Optional].ifPresent(java.util.function.Consumer)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints].isInjectionFromKotlin(java.util.List)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].bootstrap$()"
    - "[com.google.inject.internal.InjectorImpl].getAllBindings()"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getAllBindings()"
    - "[com.google.common.collect.Sets$UnmodifiableNavigableSet].stream()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[com.google.common.collect.Sets$2].stream()"
    - "[com.google.common.collect.Sets$3].stream()"
    - "[com.google.common.collect.Sets$1].stream()"
    - "[java.util.Collection].stream()"
    - "[com.google.common.collect.AbstractBiMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].values()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryBiMap].values()"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.Hashtable].values()"
    - "[com.google.common.collect.CompactHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[com.google.common.collect.EnumBiMap].values()"
    - "[com.google.common.collect.HashBiMap$Inverse].values()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].values()"
    - "[com.google.common.collect.ImmutableMap].values()"
    - "[com.google.common.collect.Maps$DescendingMap].values()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].values()"
    - "[com.google.common.collect.Maps$UnmodifiableBiMap].values()"
    - "[com.google.common.collect.EnumHashBiMap].values()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].values()"
    - "[java.util.HashMap].values()"
    - "[com.google.common.collect.ForwardingMap].values()"
    - "[com.google.common.collect.Synchronized$SynchronizedBiMap].values()"
    - "[java.util.EnumMap].values()"
    - "[com.google.common.collect.ImmutableBiMap].values()"
    - "[com.google.common.cache.LocalCache].values()"
    - "[com.google.common.collect.AbstractBiMap$Inverse].values()"
    - "[com.google.common.collect.MapMakerInternalMap].values()"
    - "[java.util.TreeMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.Properties].values()"
    - "[com.google.common.collect.HashBiMap].values()"
    - "[java.security.Provider].values()"
    - "[com.google.common.collect.ImmutableSortedMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].bootstrap$(com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.ImmutableList].toImmutableList()"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].bootstrap$(boolean,com.google.inject.TypeLiteral)"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.MissingImplementationErrorHints].convertToLatterViaJvmAnnotations(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.MissingImplementationErrorHints].wasBoundInKotlin(com.google.inject.Binding)"
    - "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.MissingImplementationErrorHints].formatVarianceSuggestion(com.google.inject.Binding)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].bootstrap$(com.google.common.collect.ImmutableList)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Math].min(int,int)"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.RegularImmutableList].size()"
    - "[com.google.common.collect.ImmutableRangeMap$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.inject.internal.MissingImplementationErrorHints].formatSuggestion(com.google.inject.Key,com.google.inject.Binding)"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$NavigableAsMap].keySet()"
    - "[com.google.common.collect.StandardRowSortedTable$RowSortedMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedNavigableMap].keySet()"
    - "[com.google.common.collect.ForwardingMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].keySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].keySet()"
    - "[com.google.common.collect.HashBiMap].keySet()"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.EnumMap].keySet()"
    - "[com.google.common.collect.HashBiMap$Inverse].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[com.google.common.collect.Maps$FilteredEntrySortedMap].keySet()"
    - "[com.google.common.collect.StandardTable$ColumnMap].keySet()"
    - "[com.google.common.collect.AbstractNavigableMap].keySet()"
    - "[com.google.common.collect.ImmutableSortedMap].keySet()"
    - "[com.google.common.collect.MapMakerInternalMap].keySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].keySet()"
    - "[com.google.common.collect.Maps$SortedAsMapView].keySet()"
    - "[com.google.common.cache.LocalCache].keySet()"
    - "[com.google.common.collect.EnumHashBiMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].keySet()"
    - "[com.google.common.collect.ArrayTable$ArrayMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$SortedAsMap].keySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[com.google.common.collect.Multimaps$AsMap].keySet()"
    - "[com.google.common.collect.Maps$DescendingMap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].keySet()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].keySet()"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].keySet()"
    - "[com.google.common.collect.AbstractBiMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.security.Provider].keySet()"
    - "[com.google.common.collect.EnumBiMap].keySet()"
    - "[com.google.common.collect.CompactHashMap].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.inject.Key].getAnnotationType()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapKeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMapEntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableSet].contains(java.lang.Object)"
    - "[com.google.common.collect.DescendingImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].contains(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].contains(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].contains(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.inject.Injector].getAllBindings()"
    - "[java.util.Map].values()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binding].getKey()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.AbstractCollection].size()"
    - "[java.util.List].get(int)"
    - "[com.google.inject.Injector].getExistingBinding(com.google.inject.Key)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    functionUses: 1
    ICount: 158
    EdgeCount: 721
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:249"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:273"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:272"
        BranchSideFuncs:
        - "bootstrap$(com.google.common.collect.ImmutableList)"
        - "<init>()"
        - "toImmutableList()"
        - "stream()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:252"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:273"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:272"
        BranchSideFuncs:
        - "bootstrap$(com.google.common.collect.ImmutableList)"
        - "<init>()"
        - "toImmutableList()"
        - "stream()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:255"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:258"
        BranchSideFuncs:
        - "wasBoundInKotlin(com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:259"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:268"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:262"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:261"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:260"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:278"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:273"
        BranchSideFuncs:
        - "min(int,int)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:272"
        BranchSideFuncs:
        - "bootstrap$(com.google.common.collect.ImmutableList)"
        - "<init>()"
        - "toImmutableList()"
        - "stream()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:281"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:289"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:291"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:297"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:296"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:292"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:292"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:291"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:278"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:334"
        BranchSideFuncs:
        - "min(int,int)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:333"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:306"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:324"
        BranchSideFuncs:
        - "keySet()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:323"
        BranchSideFuncs:
        - "size()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:309"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:312"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:311"
        BranchSideFuncs:
        - "toString()"
        - "contains(java.lang.CharSequence)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:313"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:314"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "formatSuggestion(com.google.inject.Key,com.google.inject.Binding)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:313"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "formatSuggestion(com.google.inject.Key,com.google.inject.Binding)"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:313"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:322"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "formatSuggestion(com.google.inject.Key,com.google.inject.Binding)"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:321"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:317"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:321"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:324"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:334"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:333"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:324"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:334"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:333"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:326"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:334"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "format(java.lang.String,java.lang.Object[])"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:333"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:334"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:343"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:342"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:335"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:343"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:342"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:336"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:343"
        BranchSideFuncs:
        - "getAnnotationType()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:342"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:337"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:343"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
        - "getTypeLiteral()"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:342"
        BranchSideFuncs:
        - "build()"
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:338"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:342"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:223,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:224,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:226,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction].getMissingImplementationSuggestion(com.google.inject.internal.GuiceInternal,com.google.inject.Key)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:227,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:227,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$add__169].bootstrap$(com.google.common.collect.ImmutableList$Builder)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:227,1"
      Dst: "[java.util.Optional].ifPresent(java.util.function.Consumer)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:229,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].isInjectionFromKotlin(java.util.List)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:233,1"
      Dst: "[com.google.inject.Injector].getAllBindings()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:233,1"
      Dst: "[java.util.Map].values()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:233,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:233,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].bootstrap$()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:234,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:234,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].bootstrap$(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:237,1"
      Dst: "[com.google.common.collect.ImmutableList].toImmutableList()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:237,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:241,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_3__172].bootstrap$(boolean,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:249,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:250,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:252,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:252,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:252,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:253,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:257,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].convertToLatterViaJvmAnnotations(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:257,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:259,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].wasBoundInKotlin(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:267,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].formatVarianceSuggestion(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:264,1"
      Dst: "[com.google.inject.internal.Messages].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:273,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_4__173].bootstrap$(com.google.common.collect.ImmutableList)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:277,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:280,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:280,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:282,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:288,1"
      Dst: "[com.google.inject.Injector].getExistingBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:288,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].formatSuggestion(com.google.inject.Key,com.google.inject.Binding)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:295,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:304,1"
      Dst: "[com.google.inject.TypeLiteral].toString()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:306,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:306,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:307,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:313,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:314,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:317,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:324,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:326,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:337,1"
      Dst: "[com.google.inject.Key].getAnnotationType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:338,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:338,1"
      Dst: "[com.google.common.collect.ImmutableCollection].contains(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:343,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 43
    CyclomaticComplexity: 24
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].bootstrap$(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].<init>(com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].<init>(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].<init>(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].formatSuggestion(com.google.inject.Key<?>,com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "com.google.inject.Key<?>"
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].<init>()"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[java.util.Formatter].toString()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 2
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:347,1"
      Dst: "[java.util.Formatter].<init>()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:348,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:348,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:349,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:349,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:349,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:350,1"
      Dst: "[java.util.Formatter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].formatVarianceSuggestion(com.google.inject.Binding<?>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 357
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].<init>()"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[java.util.Formatter].toString()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:354,1"
      Dst: "[java.util.Formatter].<init>()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:355,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:355,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:355,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:356,1"
      Dst: "[java.util.Formatter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$2(com.google.inject.TypeLiteral,com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarLookingTypes(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:236,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:236,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:236,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints:236,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].areSimilarLookingTypes(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$1(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationErrorHints:234"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationErrorHints:233"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:33,1"
      Dst: "[com.google.inject.internal.UntargettedBindingImpl$1].<init>()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:33,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.Key"
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:47,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.UntargettedBinding)"
    - "[com.google.inject.internal.UntargettedBindingProcessor$1].visit(com.google.inject.spi.UntargettedBinding)"
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.UntargettedBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.UntargettedBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.UntargettedBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:52,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.UntargettedBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:57,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:57,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:57,1"
      Dst: "[com.google.inject.internal.UntargettedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.UntargettedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:62,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:62,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:62,1"
      Dst: "[com.google.inject.internal.UntargettedBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$1].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionUses: 4
    ICount: 10
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:67,1"
      Dst: "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:72,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:73,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:73,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:74,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:75,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    functionUses: 57
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.UntargettedBindingImpl:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UntargettedBindingImpl:84"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.UntargettedBindingImpl:83"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.UntargettedBindingImpl:82"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UntargettedBindingImpl:80"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
        - "getKey()"
    - Branch String: "com.google.inject.internal.UntargettedBindingImpl:82"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.UntargettedBindingImpl:80"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
        - "getKey()"
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:82,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:82,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:82,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:82,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.UntargettedBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingImpl"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingImpl:90,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:90,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.UntargettedBindingImpl:90,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport].<init>()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport:15,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport].loadKotlinSupport()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "com.google.inject.internal.KotlinSupportInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getField(java.lang.String)"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport:30,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "com.google.inject.internal.KotlinSupport:31,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "com.google.inject.internal.KotlinSupport:32,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "com.google.inject.internal.KotlinSupport:33,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "com.google.inject.internal.KotlinSupport:35,1"
      Dst: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].<init>()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport$KotlinUnsupported:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.GenericErrorDetail].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.GenericErrorDetail"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 29
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 18
    EdgeCount: 136
    BranchProfiles:
    - Branch String: "com.google.inject.internal.GenericErrorDetail:24"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.GenericErrorDetail:28"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>(java.lang.Object,java.util.Formatter,boolean)"
        - "iterator()"
        - "format(java.lang.String,java.lang.Object[])"
        - "next()"
        - "format()"
        - "reverse(java.util.List)"
      - BranchSide: "com.google.inject.internal.GenericErrorDetail:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.GenericErrorDetail:22,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.GenericErrorDetail:22,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.GenericErrorDetail:23,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.GenericErrorDetail:24,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.GenericErrorDetail:24,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.GenericErrorDetail:24,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.GenericErrorDetail:24,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.GenericErrorDetail:25,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.GenericErrorDetail:26,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.GenericErrorDetail:26,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.GenericErrorDetail].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.GenericErrorDetail"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 1
    returnType: "com.google.inject.internal.GenericErrorDetail"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.spi.ErrorDetail].getCause()"
    - "[com.google.inject.spi.ErrorDetail].getMessage()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.GenericErrorDetail:32,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getMessage()"
    - Src: "com.google.inject.internal.GenericErrorDetail:32,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getCause()"
    - Src: "com.google.inject.internal.GenericErrorDetail:32,1"
      Dst: "[com.google.inject.internal.GenericErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.SingleMethodInjector$2].invoke(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.SingleMethodInjector$2"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.SingleMethodInjector$2:72,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalAccessException"
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethod$ReflectionProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation)"
    functionSourceFile: "com.google.inject.internal.ProviderMethod$ReflectionProviderMethod"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "com.google.inject.Key"
    - "java.lang.reflect.Method"
    - "java.lang.Object"
    - "com.google.common.collect.ImmutableSet"
    - "java.lang.Class"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethod$ReflectionProviderMethod:278,1"
      Dst: "[com.google.inject.internal.ProviderMethod].<init>(com.google.inject.Key,java.lang.reflect.Method,java.lang.Object,com.google.common.collect.ImmutableSet,java.lang.Class,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethod$ReflectionProviderMethod].doProvision(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.ProviderMethod$ReflectionProviderMethod"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethod$ReflectionProviderMethod:284,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalAccessException"
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getBindings()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getParameterInjectors()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:226,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getBindings()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:227,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getParameterInjectors()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:228,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 271
    functionDepth: 12
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.common.collect.ImmutableSet].builderWithExpectedSize(int)"
    - "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newNullEntryException(int)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.collect.RegularImmutableSet].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.EmptyContiguousSet].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.collect.SingletonImmutableSet].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.collect.ImmutableEnumSet].size()"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newDuplicateValuesException(java.lang.Object[])"
    - "[java.util.AbstractCollection].size()"
    functionUses: 2
    ICount: 39
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:235"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:242"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:243"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:243"
        BranchSideFuncs:
        - "builderWithExpectedSize(int)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:242"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:253"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:264"
        BranchSideFuncs:
        - "inject(com.google.inject.internal.InternalContext)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:263"
        BranchSideFuncs:
        - "build()"
        - "size()"
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:256"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:259"
        BranchSideFuncs:
        - "newNullEntryException(int)"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:258"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:259"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:null"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:267"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:270"
        BranchSideFuncs:
        - "newDuplicateValuesException(java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:269"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:267"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:270"
        BranchSideFuncs:
        - "newDuplicateValuesException(java.lang.Object[])"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:237,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:252,1"
      Dst: "[com.google.common.collect.ImmutableSet].builderWithExpectedSize(int)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:255,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].inject(com.google.inject.internal.InternalContext)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:257,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newNullEntryException(int)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:262,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:264,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:267,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:268,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newDuplicateValuesException(java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newNullEntryException(int)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 11
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[java.util.List].get(int)"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 1
    ICount: 11
    EdgeCount: 51
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:277,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:277,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:274,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].create(com.google.inject.internal.ErrorId,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].newDuplicateValuesException(java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 288
    functionDepth: 8
    returnType: "com.google.inject.internal.InternalProvisionException"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,java.util.List,java.lang.Object[],java.util.List)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].getSource()"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    functionUses: 1
    ICount: 16
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:286,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:286,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].getSource()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:286,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:286,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,java.util.List,java.lang.Object[],java.util.List)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:286,1"
      Dst: "[com.google.inject.spi.Message].<init>(com.google.inject.internal.GuiceInternal,com.google.inject.internal.ErrorId,com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:287,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].<init>(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,java.util.List,java.lang.Object[],java.util.List)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.Key"
    - "java.util.List"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,com.google.common.collect.ImmutableMultimap,java.util.List)"
    - "[com.google.inject.internal.DuplicateElementError].indexElements(java.util.List,java.lang.Object[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:25,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].indexElements(java.util.List,java.lang.Object[])"
    - Src: "com.google.inject.internal.DuplicateElementError:25,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,com.google.common.collect.ImmutableMultimap,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].indexElements(java.util.List,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableMultimap"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMultimap].builder()"
    - "[com.google.inject.internal.DuplicateElementError$Element].<init>(java.lang.Object,com.google.inject.Binding)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[com.google.common.base.Joiner$3:com.google.common.collect.RegularImmutableList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.collect.ImmutableSetMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableListMultimap$Builder].build()"
    - "[com.google.common.collect.ImmutableSetMultimap$Builder].build()"
    - "[com.google.common.collect.ImmutableMultimap$Builder].build()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DuplicateElementError:112"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:114"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:111,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].builder()"
    - Src: "com.google.inject.internal.DuplicateElementError:113,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.DuplicateElementError:113,1"
      Dst: "[com.google.inject.internal.DuplicateElementError$Element].<init>(java.lang.Object,com.google.inject.Binding)"
    - Src: "com.google.inject.internal.DuplicateElementError:113,1"
      Dst: "[com.google.common.collect.ImmutableMultimap$Builder].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.DuplicateElementError:115,1"
      Dst: "[com.google.common.collect.ImmutableMultimap$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,com.google.common.collect.ImmutableMultimap,java.util.List)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.common.collect.ImmutableMultimap"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    - "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:32,1"
      Dst: "[com.google.inject.internal.Messages].convert(java.lang.Object)"
    - Src: "com.google.inject.internal.DuplicateElementError:32,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.DuplicateElementError:30,1"
      Dst: "[com.google.inject.internal.InternalErrorDetail].<init>(com.google.inject.internal.ErrorId,java.lang.String,java.util.List,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor,com.google.inject.spi.ProviderInstanceBinding)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor"
    - "com.google.inject.spi.ProviderInstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    - "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.MultibinderBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:294"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:297"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:296"
        BranchSideFuncs:
        - "visit(com.google.inject.spi.ProviderInstanceBinding)"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:295,1"
      Dst: "[com.google.inject.multibindings.MultibindingsTargetVisitor].visit(com.google.inject.multibindings.MultibinderBinding)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:297,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderInstanceBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].getSetKey()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:303,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].getAlternateSetKeys()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfProvidersKey()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfJakartaProvidersKey()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetOfExtendsKey()"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:309,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfProvidersKey()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:310,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getCollectionOfJakartaProvidersKey()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:311,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getSetOfExtendsKey()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:308,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].getElementTypeLiteral()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.TypeLiteral"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:316,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElementTypeLiteral()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].getElements()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getElements()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:321,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].permitsDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:326,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].permitsDuplicates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].containsElement(com.google.inject.spi.Element)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderProvider:331,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].containsElement(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - "[com.google.common.collect.ImmutableSet].of()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:49,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:42,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl].getInitializationTiming()"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.ProviderMethod].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionUses: 3
    ICount: 16
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:59,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:60,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:63,1"
      Dst: "[com.google.inject.internal.BindingImpl].getProvider()"
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl:64,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Annotations$2].invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.Annotations$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Method"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.inject.internal.Annotations].annotationToString(java.lang.Class,java.util.Map)"
    - "[com.google.inject.internal.Annotations].annotationHashCode(java.lang.Class,java.util.Map)"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.inject.internal.Annotations].annotationEquals(java.lang.Class,java.util.Map,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Annotations$2:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$2:104"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations$2:103"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations$2:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$2:106"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations$2:105"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations$2:106"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$2:108"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations$2:107"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Annotations$2:108"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Annotations$2:111"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Annotations$2:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Annotations$2:101,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.Annotations$2:102,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations$2:105,1"
      Dst: "[com.google.inject.internal.Annotations].annotationToString(java.lang.Class,java.util.Map)"
    - Src: "com.google.inject.internal.Annotations$2:107,1"
      Dst: "[com.google.inject.internal.Annotations].annotationHashCode(java.lang.Class,java.util.Map)"
    - Src: "com.google.inject.internal.Annotations$2:107,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.Annotations$2:109,1"
      Dst: "[com.google.inject.internal.Annotations].annotationEquals(java.lang.Class,java.util.Map,java.lang.Object)"
    - Src: "com.google.inject.internal.Annotations$2:109,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.Annotations$2:111,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[InjectorFuzzer].<init>()"
    functionSourceFile: "InjectorFuzzer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "InjectorFuzzer:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[InjectorFuzzer].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "InjectorFuzzer"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[InjectorFuzzer$1].<init>(java.lang.String)"
    - "[com.google.inject.Guice].createInjector(com.google.inject.Module[])"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getInstance(java.lang.Class)"
    - "[com.google.inject.internal.InjectorImpl].getInstance(java.lang.Class)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - "[com.google.inject.Injector].getInstance(java.lang.Class)"
    functionUses: 0
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "InjectorFuzzer:38,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - Src: "InjectorFuzzer:41,1"
      Dst: "[InjectorFuzzer$1].<init>(java.lang.String)"
    - Src: "InjectorFuzzer:42,1"
      Dst: "[com.google.inject.Guice].createInjector(com.google.inject.Module[])"
    - Src: "InjectorFuzzer:52,1"
      Dst: "[com.google.inject.Injector].getInstance(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].<init>()"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].defineModule(java.lang.ClassLoader,java.lang.module.ModuleDescriptor,java.net.URI)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Module"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.module.ModuleDescriptor"
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].defineModule(java.lang.ClassLoader,java.lang.module.ModuleDescriptor,java.net.URI)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:78,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].defineModule(java.lang.ClassLoader,java.lang.module.ModuleDescriptor,java.net.URI)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addReads(java.lang.Module,java.lang.Module)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Module"
    - "java.lang.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addReads(java.lang.Module,java.lang.Module)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:86,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addReads(java.lang.Module,java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addReadsAllUnnamed(java.lang.Module)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addReadsAllUnnamed(java.lang.Module)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:93,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addReadsAllUnnamed(java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addExports(java.lang.Module,java.lang.String,java.lang.Module)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Module"
    - "java.lang.String"
    - "java.lang.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addExports(java.lang.Module,java.lang.String,java.lang.Module)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:101,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addExports(java.lang.Module,java.lang.String,java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addExportsToAllUnnamed(java.lang.Module,java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Module"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addExportsToAllUnnamed(java.lang.Module,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:108,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addExportsToAllUnnamed(java.lang.Module,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addOpens(java.lang.Module,java.lang.String,java.lang.Module)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Module"
    - "java.lang.String"
    - "java.lang.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addOpens(java.lang.Module,java.lang.String,java.lang.Module)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:116,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addOpens(java.lang.Module,java.lang.String,java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addOpensToAllUnnamed(java.lang.Module,java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Module"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addOpensToAllUnnamed(java.lang.Module,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:123,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addOpensToAllUnnamed(java.lang.Module,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addUses(java.lang.Module,java.lang.Class)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Module"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.misc.JavaLangAccess].addUses(java.lang.Module,java.lang.Class)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:131,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addUses(java.lang.Module,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].addProvides(java.lang.Module,java.lang.Class,java.lang.Class)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Module"
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Module].getLayer()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[jdk.internal.module.Modules$getClassLoader__217].bootstrap$(java.lang.Module)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[jdk.internal.loader.ClassLoaders].platformClassLoader()"
    - "[jdk.internal.loader.BootLoader].getServicesCatalog()"
    - "[jdk.internal.module.ServicesCatalog].getServicesCatalog(java.lang.ClassLoader)"
    - "[jdk.internal.module.ServicesCatalog].addProvider(java.lang.Module,java.lang.Class,java.lang.Class)"
    - "[jdk.internal.misc.JavaLangAccess].getServicesCatalog(java.lang.ModuleLayer)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.module.Modules:144"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:146"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:144"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:146"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:144"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:154"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:147"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:150"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:149"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:155"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.module.Modules:138,1"
      Dst: "[java.lang.Module].getLayer()"
    - Src: "jdk.internal.module.Modules:140,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:140,1"
      Dst: "[jdk.internal.module.Modules$getClassLoader__217].bootstrap$(java.lang.Module)"
    - Src: "jdk.internal.module.Modules:141,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "jdk.internal.module.Modules:143,1"
      Dst: "[jdk.internal.loader.ClassLoaders].platformClassLoader()"
    - Src: "jdk.internal.module.Modules:148,1"
      Dst: "[jdk.internal.loader.BootLoader].getServicesCatalog()"
    - Src: "jdk.internal.module.Modules:150,1"
      Dst: "[jdk.internal.module.ServicesCatalog].getServicesCatalog(java.lang.ClassLoader)"
    - Src: "jdk.internal.module.Modules:152,1"
      Dst: "[jdk.internal.module.ServicesCatalog].addProvider(java.lang.Module,java.lang.Class,java.lang.Class)"
    - Src: "jdk.internal.module.Modules:157,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].getServicesCatalog(java.lang.ModuleLayer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[jdk.internal.module.Modules].transformedByAgent(java.lang.Module)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Module"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.loader.BootLoader].getUnnamedModule()"
    - "[jdk.internal.module.Modules].addReads(java.lang.Module,java.lang.Module)"
    - "[jdk.internal.loader.ClassLoaders].appClassLoader()"
    - "[java.lang.ClassLoader].getUnnamedModule()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:167,1"
      Dst: "[jdk.internal.loader.BootLoader].getUnnamedModule()"
    - Src: "jdk.internal.module.Modules:167,1"
      Dst: "[jdk.internal.module.Modules].addReads(java.lang.Module,java.lang.Module)"
    - Src: "jdk.internal.module.Modules:168,1"
      Dst: "[jdk.internal.loader.ClassLoaders].appClassLoader()"
    - Src: "jdk.internal.module.Modules:168,1"
      Dst: "[java.lang.ClassLoader].getUnnamedModule()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].loadModule(java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Module"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ModuleLayer].boot()"
    - "[java.lang.ModuleLayer].findModule(java.lang.String)"
    - "[java.util.Optional].orElse(java.lang.Object)"
    - "[java.lang.module.ModuleFinder].of(java.nio.file.Path[])"
    - "[jdk.internal.module.ModuleBootstrap].unlimitedFinder()"
    - "[java.util.Set].of(java.lang.Object)"
    - "[java.lang.ModuleLayer].configuration()"
    - "[java.lang.module.Configuration].resolveAndBind(java.lang.module.ModuleFinder,java.lang.module.ModuleFinder,java.util.Collection)"
    - "[jdk.internal.module.ModuleLoaderMap].mappingFunction(java.lang.module.Configuration)"
    - "[java.lang.ModuleLayer].defineModules(java.lang.module.Configuration,java.util.function.Function)"
    - "[java.lang.ModuleLayer].modules()"
    - "[java.util.Collection].stream()"
    - "[jdk.internal.module.Modules$getName__218].bootstrap$()"
    - "[java.util.function.Function].identity()"
    - "[java.util.stream.Collectors].toMap(java.util.function.Function,java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Module].getDescriptor()"
    - "[java.lang.module.ModuleDescriptor].exports()"
    - "[jdk.internal.module.Modules$isQualified__220].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[jdk.internal.module.Modules$lambda_loadModule_1__221].bootstrap$(java.util.Map,java.lang.Module)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - "[java.lang.module.ModuleDescriptor].opens()"
    - "[jdk.internal.module.Modules$isQualified__222].bootstrap$()"
    - "[jdk.internal.module.Modules$lambda_loadModule_3__223].bootstrap$(java.util.Map,java.lang.Module)"
    - "[java.lang.ModuleLayer].parents()"
    - "[java.util.List].size()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[jdk.internal.misc.JavaLangAccess].addNonExportedPackages(java.lang.ModuleLayer)"
    - "[java.lang.module.Configuration].modules()"
    - "[java.lang.module.ResolvedModule].reference()"
    - "[java.lang.module.ModuleReference].descriptor()"
    - "[java.lang.module.ModuleDescriptor].name()"
    - "[java.util.function.Function].apply(java.lang.Object)"
    - "[jdk.internal.loader.BootLoader].loadModule(java.lang.module.ModuleReference)"
    - "[jdk.internal.loader.BuiltinClassLoader].loadModule(java.lang.module.ModuleReference)"
    - "[jdk.internal.module.Modules$lambda_loadModule_4__219].bootstrap$()"
    - "[java.util.Optional].orElseThrow(java.util.function.Supplier)"
    functionUses: 0
    ICount: 88
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.module.Modules:179"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:182"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:181"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:183"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:188"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:203"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:230"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:229"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:204"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:224"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:223"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:225"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:226"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:225"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:225"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:226"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:225"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:226"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:226"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:225"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:233"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:245"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:244"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.module.Modules:237"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:240"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.module.Modules:180,1"
      Dst: "[java.lang.ModuleLayer].boot()"
    - Src: "jdk.internal.module.Modules:182,1"
      Dst: "[java.lang.ModuleLayer].findModule(java.lang.String)"
    - Src: "jdk.internal.module.Modules:182,1"
      Dst: "[java.util.Optional].orElse(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:189,1"
      Dst: "[java.lang.module.ModuleFinder].of(java.nio.file.Path[])"
    - Src: "jdk.internal.module.Modules:190,1"
      Dst: "[jdk.internal.module.ModuleBootstrap].unlimitedFinder()"
    - Src: "jdk.internal.module.Modules:191,1"
      Dst: "[java.util.Set].of(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:192,1"
      Dst: "[java.lang.ModuleLayer].configuration()"
    - Src: "jdk.internal.module.Modules:192,1"
      Dst: "[java.lang.module.Configuration].resolveAndBind(java.lang.module.ModuleFinder,java.lang.module.ModuleFinder,java.util.Collection)"
    - Src: "jdk.internal.module.Modules:195,1"
      Dst: "[jdk.internal.module.ModuleLoaderMap].mappingFunction(java.lang.module.Configuration)"
    - Src: "jdk.internal.module.Modules:196,1"
      Dst: "[java.lang.ModuleLayer].defineModules(java.lang.module.Configuration,java.util.function.Function)"
    - Src: "jdk.internal.module.Modules:199,1"
      Dst: "[java.lang.ModuleLayer].modules()"
    - Src: "jdk.internal.module.Modules:199,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "jdk.internal.module.Modules:199,1"
      Dst: "[jdk.internal.module.Modules$getName__218].bootstrap$()"
    - Src: "jdk.internal.module.Modules:201,1"
      Dst: "[java.util.function.Function].identity()"
    - Src: "jdk.internal.module.Modules:200,1"
      Dst: "[java.util.stream.Collectors].toMap(java.util.function.Function,java.util.function.Function)"
    - Src: "jdk.internal.module.Modules:200,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "jdk.internal.module.Modules:204,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "jdk.internal.module.Modules:204,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "jdk.internal.module.Modules:204,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "jdk.internal.module.Modules:206,1"
      Dst: "[java.lang.Module].getDescriptor()"
    - Src: "jdk.internal.module.Modules:206,1"
      Dst: "[java.lang.module.ModuleDescriptor].exports()"
    - Src: "jdk.internal.module.Modules:206,1"
      Dst: "[jdk.internal.module.Modules$isQualified__220].bootstrap$()"
    - Src: "jdk.internal.module.Modules:207,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "jdk.internal.module.Modules:207,1"
      Dst: "[jdk.internal.module.Modules$lambda_loadModule_1__221].bootstrap$(java.util.Map,java.lang.Module)"
    - Src: "jdk.internal.module.Modules:208,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "jdk.internal.module.Modules:215,1"
      Dst: "[java.lang.module.ModuleDescriptor].opens()"
    - Src: "jdk.internal.module.Modules:215,1"
      Dst: "[jdk.internal.module.Modules$isQualified__222].bootstrap$()"
    - Src: "jdk.internal.module.Modules:216,1"
      Dst: "[jdk.internal.module.Modules$lambda_loadModule_3__223].bootstrap$(java.util.Map,java.lang.Module)"
    - Src: "jdk.internal.module.Modules:224,1"
      Dst: "[java.lang.ModuleLayer].parents()"
    - Src: "jdk.internal.module.Modules:225,1"
      Dst: "[java.util.List].size()"
    - Src: "jdk.internal.module.Modules:225,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "jdk.internal.module.Modules:226,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "jdk.internal.module.Modules:226,1"
      Dst: "[java.util.List].get(int)"
    - Src: "jdk.internal.module.Modules:230,1"
      Dst: "[jdk.internal.misc.JavaLangAccess].addNonExportedPackages(java.lang.ModuleLayer)"
    - Src: "jdk.internal.module.Modules:233,1"
      Dst: "[java.lang.module.Configuration].modules()"
    - Src: "jdk.internal.module.Modules:234,1"
      Dst: "[java.lang.module.ResolvedModule].reference()"
    - Src: "jdk.internal.module.Modules:235,1"
      Dst: "[java.lang.module.ModuleReference].descriptor()"
    - Src: "jdk.internal.module.Modules:235,1"
      Dst: "[java.lang.module.ModuleDescriptor].name()"
    - Src: "jdk.internal.module.Modules:236,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:238,1"
      Dst: "[jdk.internal.loader.BootLoader].loadModule(java.lang.module.ModuleReference)"
    - Src: "jdk.internal.module.Modules:240,1"
      Dst: "[jdk.internal.loader.BuiltinClassLoader].loadModule(java.lang.module.ModuleReference)"
    - Src: "jdk.internal.module.Modules:248,1"
      Dst: "[jdk.internal.module.Modules$lambda_loadModule_4__219].bootstrap$()"
    - Src: "jdk.internal.module.Modules:249,1"
      Dst: "[java.util.Optional].orElseThrow(java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 23
    CyclomaticComplexity: 8
  - functionName: "[jdk.internal.module.Modules].findLoadedModule(java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "java.util.Optional"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ModuleLayer].boot()"
    - "[java.lang.ModuleLayer].findModule(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "jdk.internal.module.Modules:260"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:262"
        BranchSideFuncs:
        - "boot()"
      - BranchSide: "jdk.internal.module.Modules:261"
        BranchSideFuncs:
        - "findModule(java.lang.String)"
    Callsites:
    - Src: "jdk.internal.module.Modules:261,1"
      Dst: "[java.lang.ModuleLayer].boot()"
    - Src: "jdk.internal.module.Modules:262,1"
      Dst: "[java.lang.ModuleLayer].findModule(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.module.Modules].lambda$loadModule$4()"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.InternalError"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:249,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].lambda$loadModule$3(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Opens)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.lang.Module"
    - "java.lang.module.ModuleDescriptor$Opens"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.module.ModuleDescriptor$Opens].targets()"
    - "[jdk.internal.module.Modules$lambda_loadModule_2__224].bootstrap$(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Opens)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:217,1"
      Dst: "[java.lang.module.ModuleDescriptor$Opens].targets()"
    - Src: "jdk.internal.module.Modules:217,1"
      Dst: "[jdk.internal.module.Modules$lambda_loadModule_2__224].bootstrap$(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Opens)"
    - Src: "jdk.internal.module.Modules:217,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].lambda$loadModule$2(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Opens,java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Map"
    - "java.lang.Module"
    - "java.lang.module.ModuleDescriptor$Opens"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].source()"
    - "[jdk.internal.module.Modules].addOpens(java.lang.Module,java.lang.String,java.lang.Module)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.module.Modules:219"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:221"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.module.Modules:218,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:220,1"
      Dst: "[java.lang.module.ModuleDescriptor$Opens].source()"
    - Src: "jdk.internal.module.Modules:220,1"
      Dst: "[jdk.internal.module.Modules].addOpens(java.lang.Module,java.lang.String,java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.module.Modules].lambda$loadModule$1(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Exports)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.lang.Module"
    - "java.lang.module.ModuleDescriptor$Exports"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.module.ModuleDescriptor$Exports].targets()"
    - "[jdk.internal.module.Modules$lambda_loadModule_0__225].bootstrap$(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Exports)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.module.Modules:208,1"
      Dst: "[java.lang.module.ModuleDescriptor$Exports].targets()"
    - Src: "jdk.internal.module.Modules:208,1"
      Dst: "[jdk.internal.module.Modules$lambda_loadModule_0__225].bootstrap$(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Exports)"
    - Src: "jdk.internal.module.Modules:208,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.module.Modules].lambda$loadModule$0(java.util.Map,java.lang.Module,java.lang.module.ModuleDescriptor$Exports,java.lang.String)"
    functionSourceFile: "jdk.internal.module.Modules"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Map"
    - "java.lang.Module"
    - "java.lang.module.ModuleDescriptor$Exports"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].source()"
    - "[jdk.internal.module.Modules].addExports(java.lang.Module,java.lang.String,java.lang.Module)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.module.Modules:210"
      Branch Sides:
      - BranchSide: "jdk.internal.module.Modules:212"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.module.Modules:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.module.Modules:209,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "jdk.internal.module.Modules:211,1"
      Dst: "[java.lang.module.ModuleDescriptor$Exports].source()"
    - Src: "jdk.internal.module.Modules:211,1"
      Dst: "[jdk.internal.module.Modules].addExports(java.lang.Module,java.lang.String,java.lang.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82].apply(int)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredFields$0(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredFields_0__82:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredFields$0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].visitAnnotation(java.lang.String,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].visitArray(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$4].convert(java.lang.String,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$4"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$4:105,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$4:107,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$4:107,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$4].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$4"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__73].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__73"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__73:-1,1"
      Dst: "[java.lang.reflect.Method].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeNotFoundError].isMergeable(com.google.inject.spi.ErrorDetail<?>)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ScopeNotFoundError:26"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeNotFoundError:26"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ScopeNotFoundError:25"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ScopeNotFoundError:27"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeNotFoundError:25"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError:27,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ScopeNotFoundError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 42
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.inject.internal.ScopeNotFoundError$getSources__145].bootstrap$()"
    - "[com.google.inject.internal.ScopeNotFoundError$add__146].bootstrap$(java.util.List)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.Collection].stream()"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.ArrayList:java.util.concurrent.ArrayBlockingQueue$Itr].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 28
    EdgeCount: 126
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ScopeNotFoundError:38"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeNotFoundError:41"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "formatSources(int,java.util.List,java.util.Formatter)"
        - "reverse(java.util.List)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.ScopeNotFoundError:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError:32,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:33,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:33,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError$getSources__145].bootstrap$()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError$add__146].bootstrap$(java.util.List)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:34,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:36,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.ScopeNotFoundError:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:38,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ScopeNotFoundError:39,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.ScopeNotFoundError:39,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ScopeNotFoundError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.ScopeNotFoundError"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 7
    returnType: "com.google.inject.internal.ScopeNotFoundError"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ScopeNotFoundError].<init>(java.lang.Class,java.util.List)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ScopeNotFoundError:45,1"
      Dst: "[com.google.inject.internal.ScopeNotFoundError].<init>(java.lang.Class,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__79].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__79"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].getName()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__79:-1,1"
      Dst: "[java.lang.reflect.Field].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DisableCircularProxiesOption].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.DisableCircularProxiesOption"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:33,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DisableCircularProxiesOption].getSource()"
    functionSourceFile: "com.google.inject.spi.DisableCircularProxiesOption"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DisableCircularProxiesOption].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.DisableCircularProxiesOption"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].disableCircularProxies()"
    - "[com.google.inject.spi.DisableCircularProxiesOption].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].disableCircularProxies()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:43,1"
      Dst: "[com.google.inject.spi.DisableCircularProxiesOption].getSource()"
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:43,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:43,1"
      Dst: "[com.google.inject.Binder].disableCircularProxies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.DisableCircularProxiesOption].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.DisableCircularProxiesOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.DisableCircularProxiesOption)"
    - "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.DisableCircularProxiesOption)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.DisableCircularProxiesOption)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.DisableCircularProxiesOption:48,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.DisableCircularProxiesOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].getSource()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ProviderLookup)"
    - "[com.google.inject.internal.LookupProcessor].visit(com.google.inject.spi.ProviderLookup)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ProviderLookup)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:74,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.ProviderLookup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].initializeDelegate(com.google.inject.Provider<T>)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Provider<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.ProviderLookup:83"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ProviderLookup:83"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.ProviderLookup:82"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:83,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:84,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.ProviderLookup].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.spi.Dependency)"
    - "[com.google.inject.spi.ProviderLookup].getSource()"
    - "[com.google.inject.spi.ProviderLookup].initializeDelegate(com.google.inject.Provider)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].getProvider(com.google.inject.spi.Dependency)"
    functionUses: 4
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:89,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getSource()"
    - Src: "com.google.inject.spi.ProviderLookup:89,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:89,1"
      Dst: "[com.google.inject.Binder].getProvider(com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.spi.ProviderLookup:89,1"
      Dst: "[com.google.inject.spi.ProviderLookup].initializeDelegate(com.google.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].getDelegate()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].toString()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 138
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:134,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.spi.ProviderLookup:135,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:136,1"
      Dst: "[com.google.inject.internal.Errors].convert(java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:137,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    functionUses: 56
    ICount: 18
    EdgeCount: 388
    BranchProfiles:
    - Branch String: "com.google.inject.spi.ProviderLookup:142"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ProviderLookup:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.ProviderLookup:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.ProviderLookup:143"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ProviderLookup:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.ProviderLookup:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.ProviderLookup:144"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ProviderLookup:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:143,1"
      Dst: "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.ProviderLookup:144,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 57
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Dependency:103"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:109"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Dependency:108"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Dependency:105"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Dependency:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Dependency:105"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Dependency:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.Dependency:107"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Dependency:105,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.Dependency:107,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.ProviderLookup].hashCode()"
    functionSourceFile: "com.google.inject.spi.ProviderLookup"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ProviderLookup:149,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$ElementsAsModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.Elements$ElementsAsModule"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.LinkedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ExposedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExplicitBindingsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.MembersInjectorLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.UntargettedBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.StaticInjectionRequest].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.Message].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeConverterBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.DisableCircularProxiesOption].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.TypeListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.PrivateElementsImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProvisionListenerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ConstructorBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ScopeBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.InterceptorBinding].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.spi.ProviderLookup].applyTo(com.google.inject.Binder)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].applyTo(com.google.inject.Binder)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    functionUses: 1
    ICount: 11
    EdgeCount: 326
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$ElementsAsModule:155"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$ElementsAsModule:158"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "applyTo(com.google.inject.Binder)"
        - "next()"
      - BranchSide: "com.google.inject.spi.Elements$ElementsAsModule:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$ElementsAsModule:155,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.inject.spi.Elements$ElementsAsModule:155,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.Elements$ElementsAsModule:155,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.Elements$ElementsAsModule:156,1"
      Dst: "[com.google.inject.spi.Element].applyTo(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$1].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$1"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ClassOwnership].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$1:101,1"
      Dst: "[com.google.common.reflect.Types$ClassOwnership].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$1].getOwnerType(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$1"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getEnclosingClass()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$1:105,1"
      Dst: "[java.lang.Class].getEnclosingClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Signature].hashCode()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Signature"
    linkageType: ""
    functionLinenumber: 919
    functionLinenumberEnd: 921
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Signature"
    linkageType: ""
    functionLinenumber: 924
    functionLinenumberEnd: 945
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 56
    ICount: 30
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:925"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:929"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:928"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:930"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:934"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:933"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:934"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:938"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:937"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:938"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:944"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:943"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.InjectionPoint$Signature:939"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:938"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.InjectionPoint$Signature:937"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$Signature:930,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.FactoryProxy].notify(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.FactoryProxy"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getInternalFactory(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.FactoryProxy:49,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.FactoryProxy:48,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getInternalFactory(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.FactoryProxy:51,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.FactoryProxy:51,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.FactoryProxy"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1:com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 12
    ICount: 11
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.FactoryProxy:60,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.FactoryProxy:62,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.FactoryProxy].toString()"
    functionSourceFile: "com.google.inject.internal.FactoryProxy"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 21
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.FactoryProxy:68,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.FactoryProxy:69,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.FactoryProxy:71,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201].applyAsInt(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ImmutableStringTrie].singletonTrie(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$singletonTrie__201:-1,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].singletonTrie(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers].<init>()"
    functionSourceFile: "com.google.inject.util.Providers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers].guicify(com.google.inject.Provider<T>)"
    functionSourceFile: "com.google.inject.util.Providers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Provider<T>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers].guicify(jakarta.inject.Provider<T>)"
    functionSourceFile: "com.google.inject.util.Providers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "jakarta.inject.Provider<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - "[java.util.Set].isEmpty()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].<init>(jakarta.inject.Provider)"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.util.Providers$lambda_guicify_0__226].bootstrap$()"
    - "[java.util.stream.Stream].flatMap(java.util.function.Function)"
    - "[com.google.common.collect.ImmutableSet].toImmutableSet()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].<init>(java.util.Set,jakarta.inject.Provider)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.util.Providers:106"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers:110"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.util.Providers:109"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Providers:115"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers:119"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.util.Providers:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Providers:110,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.util.Providers:114,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.util.Providers:114,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(java.lang.Class)"
    - Src: "com.google.inject.util.Providers:115,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "com.google.inject.util.Providers:116,1"
      Dst: "[com.google.inject.util.Providers$GuicifiedJakartaProvider].<init>(jakarta.inject.Provider)"
    - Src: "com.google.inject.util.Providers:119,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.util.Providers:119,1"
      Dst: "[com.google.inject.util.Providers$lambda_guicify_0__226].bootstrap$()"
    - Src: "com.google.inject.util.Providers:120,1"
      Dst: "[java.util.stream.Stream].flatMap(java.util.function.Function)"
    - Src: "com.google.inject.util.Providers:121,1"
      Dst: "[com.google.common.collect.ImmutableSet].toImmutableSet()"
    - Src: "com.google.inject.util.Providers:121,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.util.Providers:122,1"
      Dst: "[com.google.inject.util.Providers$GuicifiedJakartaProviderWithDependencies].<init>(java.util.Set,jakarta.inject.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers].lambda$guicify$0(com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.util.Providers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[java.util.Collection].stream()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers:120,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.util.Providers:120,1"
      Dst: "[java.util.Collection].stream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].getSource()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LookupProcessor].visit(com.google.inject.spi.MembersInjectorLookup)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.MembersInjectorLookup)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.MembersInjectorLookup)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:63,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.MembersInjectorLookup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].initializeDelegate(com.google.inject.MembersInjector<T>)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.MembersInjector<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.MembersInjectorLookup:72"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:72"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "checkNotNull(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:71"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:72,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.spi.MembersInjectorLookup:73,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].getMembersInjector(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.MembersInjectorLookup].getSource()"
    - "[com.google.inject.spi.MembersInjectorLookup].initializeDelegate(com.google.inject.MembersInjector)"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].getMembersInjector(com.google.inject.TypeLiteral)"
    functionUses: 4
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:78,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].getSource()"
    - Src: "com.google.inject.spi.MembersInjectorLookup:78,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.MembersInjectorLookup:78,1"
      Dst: "[com.google.inject.Binder].getMembersInjector(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.MembersInjectorLookup:78,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].initializeDelegate(com.google.inject.MembersInjector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].getDelegate()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].getInjectionPoints()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:103,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forInstanceMethodsAndFields(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.ConfigurationException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    functionUses: 56
    ICount: 18
    EdgeCount: 388
    BranchProfiles:
    - Branch String: "com.google.inject.spi.MembersInjectorLookup:132"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.MembersInjectorLookup:133"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.MembersInjectorLookup:134"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.MembersInjectorLookup:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:133,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.spi.MembersInjectorLookup:134,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.MembersInjectorLookup].hashCode()"
    functionSourceFile: "com.google.inject.spi.MembersInjectorLookup"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.MembersInjectorLookup:139,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$getName__81].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$getName__81"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$getName__81:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].bootstrap$(com.google.inject.internal.AbstractProcessor,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractProcessor"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].<init>(com.google.inject.internal.AbstractProcessor,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18:-1,1"
      Dst: "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].<init>(com.google.inject.internal.AbstractProcessor,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].<init>(com.google.inject.internal.AbstractProcessor,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractProcessor"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractProcessor].lambda$process$0(com.google.inject.internal.Errors,com.google.inject.spi.Element)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractProcessor$lambda_process_0__18:-1,1"
      Dst: "[com.google.inject.internal.AbstractProcessor].lambda$process$0(com.google.inject.internal.Errors,com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1].<init>(com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory,com.google.inject.spi.Dependency,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory"
    - "com.google.inject.spi.Dependency"
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.internal.ConstructionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1].call()"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].provision(com.google.inject.spi.Dependency,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory$1:169,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].provision(com.google.inject.spi.Dependency,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$1].get()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$1"
    linkageType: ""
    functionLinenumber: 1145
    functionLinenumberEnd: 1155
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].enterContext()"
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    - "[com.google.inject.internal.InternalContext].close()"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 7
    ICount: 16
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$1:1146,1"
      Dst: "[com.google.inject.internal.InjectorImpl].enterContext()"
    - Src: "com.google.inject.internal.InjectorImpl$1:1148,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.InjectorImpl$1:1153,1"
      Dst: "[com.google.inject.internal.InternalContext].close()"
    - Src: "com.google.inject.internal.InjectorImpl$1:1151,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorImpl$1:1151,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorImpl$1].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorImpl$1"
    linkageType: ""
    functionLinenumber: 1158
    functionLinenumberEnd: 1160
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.internal.InjectorShell$InjectorFactory].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[java.lang.Object].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorImpl$1:1159,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Class)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 354
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Package].getName()"
    - "[java.lang.Class].getPackage()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$InSubpackage:352"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:351"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:350"
        BranchSideFuncs:
        - "getName()"
        - "getPackage()"
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$InSubpackage:353"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:350"
        BranchSideFuncs:
        - "getName()"
        - "getPackage()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:351,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:351,1"
      Dst: "[java.lang.Package].getName()"
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:352,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:352,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:353,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 360
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$InSubpackage:358"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:358"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:357"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.matcher.Matchers$InSubpackage:359"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InSubpackage:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:359,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:364,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:369,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InSubpackage"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Class)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InSubpackage:342,1"
      Dst: "[com.google.inject.matcher.Matchers$InSubpackage].matches(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].<init>(int)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.collect.Count:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].get()"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].add(int)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].addAndGet(int)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].set(int)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].getAndSet(int)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].hashCode()"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.collect.Count].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 56
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.common.collect.Count:64"
      Branch Sides:
      - BranchSide: "com.google.common.collect.Count:63"
        BranchSideFuncs: []
    - Branch String: "com.google.common.collect.Count:64"
      Branch Sides:
      - BranchSide: "com.google.common.collect.Count:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.collect.Count].toString()"
    functionSourceFile: "com.google.common.collect.Count"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.collect.Count:69,1"
      Dst: "[java.lang.Integer].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$7].<init>(com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.internal.Scoping$7"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$7:198,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$7].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$7"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$2].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.Scopes$3].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.util.Modules$OverrideModule$4].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.internal.Indexer].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.spi.BindingScopingVisitor].visitScope(com.google.inject.Scope)"
    functionUses: 1
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$7:201,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitScope(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$7].getScopeInstance()"
    functionSourceFile: "com.google.inject.internal.Scoping$7"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$7].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$7"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.inject.Scopes$1].toString()"
    - "[com.google.inject.Scope].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$7:211,1"
      Dst: "[com.google.inject.Scope].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$7"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].in(com.google.inject.Scope)"
    - "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$7:216,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].isMergeable(com.google.inject.spi.ErrorDetail<?>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationError:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:45"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MissingImplementationError:44"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationError:46"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:46,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MissingImplementationError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 74
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.loader.BootLoader$PackageHelper$lambda_findModule_0__30].get()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].get()"
    - "[com.google.common.collect.HashBasedTable$Factory].get()"
    - "[com.google.common.util.concurrent.AbstractIdleService$ThreadNameSupplier].get()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].get()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].get()"
    - "[com.google.common.hash.LongAddables$1].get()"
    - "[com.google.common.collect.MultimapBuilder$EnumSetSupplier].get()"
    - "[com.google.common.hash.Hashing$Crc32CSupplier$1].get()"
    - "[com.google.common.collect.MultimapBuilder$HashSetSupplier].get()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier$lambda_static_0__15].get()"
    - "[com.google.common.hash.Hashing$Crc32CSupplier$2].get()"
    - "[com.google.common.cache.CacheBuilder$2].get()"
    - "[com.google.common.cache.LongAddables$2].get()"
    - "[com.google.common.hash.Hashing$ChecksumType$3].get()"
    - "[com.google.inject.internal.util.DirectStackWalkerFinder$init__157].get()"
    - "[com.google.common.collect.Iterables$1$lambda_spliterator_0__97].get()"
    - "[com.google.common.collect.TreeBasedTable$Factory].get()"
    - "[com.google.common.hash.Hashing$ChecksumType$1].get()"
    - "[com.google.common.collect.MultimapBuilder$ArrayListSupplier].get()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].get()"
    - "[com.google.common.hash.Hashing$ChecksumType$2].get()"
    - "[com.google.common.collect.MultimapBuilder$TreeSetSupplier].get()"
    - "[com.google.common.hash.LongAddables$2].get()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Memoizer].get()"
    - "[com.google.common.collect.MultimapBuilder$LinkedHashSetSupplier].get()"
    - "[jdk.internal.module.SystemModuleFinders$2].get()"
    - "[com.google.common.base.Suppliers$SupplierComposition].get()"
    - "[com.google.common.cache.LongAddables$1].get()"
    - "[com.google.common.collect.MultimapBuilder$LinkedListSupplier].get()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].get()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].bootstrap$(java.util.Formatter)"
    - "[com.google.common.collect.RegularImmutableAsList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].bootstrap$()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.inject.internal.MissingImplementationError$trimSource__148].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].bootstrap$()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 48
    EdgeCount: 183
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingImplementationError:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:55"
        BranchSideFuncs:
        - "requireNonNull(java.lang.Object)"
        - "bootstrap$(java.util.Formatter)"
        - "forEach(java.util.function.Consumer)"
      - BranchSide: "com.google.inject.internal.MissingImplementationError:54"
        BranchSideFuncs:
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "bootstrap$()"
        - "addAll(java.util.Collection)"
        - "getSources()"
        - "toList()"
        - "<init>()"
        - "bootstrap$(com.google.inject.internal.MissingImplementationError)"
        - "stream()"
    - Branch String: "com.google.inject.internal.MissingImplementationError:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:73"
        BranchSideFuncs:
        - "hasNext()"
        - "format(java.lang.String,java.lang.Object[])"
        - "next()"
        - "bold(java.lang.String)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingImplementationError:72"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingImplementationError:69"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingImplementationError:73"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "formatSources(int,java.util.List,java.util.Formatter)"
        - "reverse(java.util.List)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingImplementationError:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:51,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "com.google.inject.internal.MissingImplementationError:52,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "com.google.inject.internal.MissingImplementationError:53,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationError:53,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_1__150].bootstrap$(java.util.Formatter)"
    - Src: "com.google.inject.internal.MissingImplementationError:53,1"
      Dst: "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.internal.MissingImplementationError:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.MissingImplementationError:56,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.MissingImplementationError:56,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationError:58,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.MissingImplementationError:58,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$getSources__147].bootstrap$()"
    - Src: "com.google.inject.internal.MissingImplementationError:58,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.MissingImplementationError:58,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.MissingImplementationError:58,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.MissingImplementationError:57,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.internal.MissingImplementationError:61,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$trimSource__148].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    - Src: "com.google.inject.internal.MissingImplementationError:62,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].bootstrap$()"
    - Src: "com.google.inject.internal.MissingImplementationError:63,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.MissingImplementationError:66,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.MissingImplementationError:67,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.MissingImplementationError:67,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.MissingImplementationError:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.MissingImplementationError:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MissingImplementationError:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MissingImplementationError:70,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.MissingImplementationError:70,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.MissingImplementationError$getSources__147].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$getSources__147"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$getSources__147].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$getSources__147:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$getSources__147].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$getSources__147].<init>()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$getSources__147"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$getSources__147:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 7
    returnType: "com.google.inject.internal.MissingImplementationError<T>"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,java.util.function.Supplier,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:77,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].<init>(com.google.inject.Key,java.util.function.Supplier,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].trimSource(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 2
    returnType: "java.util.List<Object>"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].bootstrap$(com.google.inject.internal.MissingImplementationError)"
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.MissingImplementationError:82,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError].lambda$new$0(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 3
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Injector"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].getSuggestions(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError:28,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].getSuggestions(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeGetter].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeGetter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeGetter:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeGetter].getUnsafe()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeGetter"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "sun.misc.Unsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getUnsafe()"
    - "[java.lang.Class].getDeclaredFields()"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[java.lang.Class].cast(java.lang.Object)"
    - "[java.lang.NoSuchFieldError].<init>(java.lang.String)"
    functionUses: 2
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.UnsafeGetter:31"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeGetter:38"
        BranchSideFuncs:
        - "setAccessible(boolean)"
        - "isInstance(java.lang.Object)"
        - "getDeclaredFields()"
        - "get(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.UnsafeGetter:37"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "com.google.inject.internal.aop.UnsafeGetter:34"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.UnsafeGetter:25"
        BranchSideFuncs:
        - "cast(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.UnsafeGetter:24"
        BranchSideFuncs:
        - "getUnsafe()"
        - "getDeclaredFields()"
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeGetter:25,1"
      Dst: "[sun.misc.Unsafe].getUnsafe()"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:31,1"
      Dst: "[java.lang.Class].getDeclaredFields()"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:32,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:33,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:34,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:35,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.UnsafeGetter:38,1"
      Dst: "[java.lang.NoSuchFieldError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ReflectiveOperationException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key"
    - "com.google.inject.internal.DelayedInitialize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:47,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:59,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].createWithInitializer(com.google.inject.internal.InjectorImpl,com.google.inject.Key<T>,java.lang.Object,com.google.inject.internal.InternalFactory<?\
      \ extends T>,com.google.inject.internal.Scoping,com.google.inject.Key<? extends\
      \ jakarta.inject.Provider<? extends T>>,com.google.inject.internal.DelayedInitialize)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "com.google.inject.internal.LinkedProviderBindingImpl<T>"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key<T>"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory<? extends T>"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.Key<? extends jakarta.inject.Provider<? extends T>>"
    - "com.google.inject.internal.DelayedInitialize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:80,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key,com.google.inject.internal.DelayedInitialize)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderKeyBinding)"
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ProviderKeyBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ProviderKeyBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderKeyBinding)"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:86,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ProviderKeyBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].getProviderKey()"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionUses: 3
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.LinkedProviderBindingImpl:96"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:99"
        BranchSideFuncs:
        - "initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:97,1"
      Dst: "[com.google.inject.internal.DelayedInitialize].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:103,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:103,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:108,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:108,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:108,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:113,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:113,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:113,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(java.lang.Object,com.google.inject.Key,com.google.inject.internal.Scoping,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.BindingImpl:com.google.inject.internal.Scoping$1].getSource()"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getProviderKey()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Key)"
    - "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionUses: 4
    ICount: 12
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:118,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:120,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:120,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:121,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:121,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:122,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].getProviderKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:122,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Key)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:119,1"
      Dst: "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:127,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:128,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:128,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:129,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:130,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:132,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 144
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.LinkedProviderBindingImpl:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:143"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:142"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedProviderBindingImpl:139"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedProviderBindingImpl:140"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.LinkedProviderBindingImpl:141"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.LinkedProviderBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:139,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:139,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:140,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:140,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:141,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.LinkedProviderBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.LinkedProviderBindingImpl"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:149,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:149,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.LinkedProviderBindingImpl:149,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$1].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$1"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 548
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$1:547,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$1].newArrayType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$1"
    linkageType: ""
    functionLinenumber: 549
    functionLinenumberEnd: 551
    functionDepth: 1
    returnType: "java.lang.reflect.GenericArrayType"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$1:550,1"
      Dst: "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$1].usedInGenericType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$1"
    linkageType: ""
    functionLinenumber: 554
    functionLinenumberEnd: 563
    functionDepth: 1
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[java.lang.Class].isArray()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    - "[java.lang.Class].getComponentType()"
    functionUses: 4
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$JavaVersion$1:556"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$1:562"
        BranchSideFuncs:
        - "isArray()"
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$1:561"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$JavaVersion$1:558"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$1:562"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Type)"
        - "getComponentType()"
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$1:561"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$1:555,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$JavaVersion$1:558,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "com.google.common.reflect.Types$JavaVersion$1:559,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "com.google.common.reflect.Types$JavaVersion$1:559,1"
      Dst: "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorInjector].construct(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,com.google.inject.internal.ProvisionListenerStackCallback<T>)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 105
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "com.google.inject.internal.ProvisionListenerStackCallback<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalContext].getConstructionContext(java.lang.Object)"
    - "[com.google.inject.internal.ConstructionContext].isConstructing()"
    - "[com.google.inject.internal.ConstructionContext].createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
    - "[com.google.inject.internal.InternalContext].getInjectorOptions()"
    - "[com.google.inject.spi.Dependency].getKey()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.ConstructionContext].getCurrentReference()"
    - "[com.google.inject.internal.InternalProvisionException].circularDependenciesDisabled(java.lang.Class)"
    - "[com.google.inject.internal.ConstructionContext].startConstruction()"
    - "[com.google.inject.internal.ConstructorInjector].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.ConstructorInjector$1].<init>(com.google.inject.internal.ConstructorInjector,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.ProvisionListenerStackCallback].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    - "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    functionUses: 1
    ICount: 37
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorInjector:70"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjector:77"
        BranchSideFuncs:
        - "getCurrentReference()"
    - Branch String: "com.google.inject.internal.ConstructorInjector:79"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjector:87"
        BranchSideFuncs:
        - "getInjectorOptions()"
      - BranchSide: "com.google.inject.internal.ConstructorInjector:86"
        BranchSideFuncs:
        - "startConstruction()"
    - Branch String: "com.google.inject.internal.ConstructorInjector:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjector:84"
        BranchSideFuncs:
        - "startConstruction()"
        - "getTypeLiteral()"
        - "<init>(com.google.inject.internal.ConstructorInjector,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
        - "createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
        - "finishConstruction()"
        - "getInjectorOptions()"
        - "getCurrentReference()"
        - "circularDependenciesDisabled(java.lang.Class)"
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
        - "getKey()"
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.ConstructorInjector:83"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorInjector:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjector:93"
        BranchSideFuncs:
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
      - BranchSide: "com.google.inject.internal.ConstructorInjector:92"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.ConstructorInjector,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
        - "provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjector:68,1"
      Dst: "[com.google.inject.internal.InternalContext].getConstructionContext(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorInjector:70,1"
      Dst: "[com.google.inject.internal.ConstructionContext].isConstructing()"
    - Src: "com.google.inject.internal.ConstructorInjector:73,1"
      Dst: "[com.google.inject.internal.InternalContext].getInjectorOptions()"
    - Src: "com.google.inject.internal.ConstructorInjector:73,1"
      Dst: "[com.google.inject.spi.Dependency].getKey()"
    - Src: "com.google.inject.internal.ConstructorInjector:73,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.ConstructorInjector:73,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.ConstructorInjector:72,1"
      Dst: "[com.google.inject.internal.ConstructionContext].createProxy(com.google.inject.internal.InjectorImpl$InjectorOptions,java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorInjector:78,1"
      Dst: "[com.google.inject.internal.ConstructionContext].getCurrentReference()"
    - Src: "com.google.inject.internal.ConstructorInjector:81,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].circularDependenciesDisabled(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorInjector:87,1"
      Dst: "[com.google.inject.internal.ConstructionContext].startConstruction()"
    - Src: "com.google.inject.internal.ConstructorInjector:91,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    - Src: "com.google.inject.internal.ConstructorInjector:103,1"
      Dst: "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    - Src: "com.google.inject.internal.ConstructorInjector:93,1"
      Dst: "[com.google.inject.internal.ConstructorInjector$1].<init>(com.google.inject.internal.ConstructorInjector,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    - Src: "com.google.inject.internal.ConstructorInjector:93,1"
      Dst: "[com.google.inject.internal.ProvisionListenerStackCallback].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ProvisionListenerStackCallback$ProvisionCallback)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].isConstructing()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].getCurrentReference()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].startConstruction()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjector$1].<init>(com.google.inject.internal.ConstructorInjector,com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector$1"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.ConstructorInjector"
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.internal.ConstructionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjector$1:95,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjector].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext<T>)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 135
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.internal.ConstructionContext<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.SingleParameterInjector].getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].newInstance(java.lang.Object[])"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].newInstance(java.lang.Object[])"
    - "[com.google.inject.internal.ProxyFactory$ProxyConstructor].newInstance(java.lang.Object[])"
    - "[com.google.inject.internal.ConstructionContext].setProxyDelegates(java.lang.Object)"
    - "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    - "[com.google.inject.internal.ConstructionContext].setCurrentReference(java.lang.Object)"
    - "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - "[com.google.inject.internal.MembersInjectorImpl].notifyListeners(java.lang.Object)"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[com.google.inject.internal.InternalProvisionException].errorInjectingConstructor(java.lang.Throwable)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.ProxyFactory$ProxyConstructor].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy].getInjectionPoint()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy].getInjectionPoint()"
    - "[com.google.inject.internal.ConstructionContext].removeCurrentReference()"
    - "[com.google.inject.internal.ConstructionProxy].newInstance(java.lang.Object[])"
    - "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    functionUses: 2
    ICount: 35
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorInjector:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorInjector:129"
        BranchSideFuncs:
        - "getInjectionPoint()"
        - "errorInjectingConstructor(java.lang.Throwable)"
        - "addSource(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructorInjector:128"
        BranchSideFuncs:
        - "getCause()"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjector:113,1"
      Dst: "[com.google.inject.internal.SingleParameterInjector].getAll(com.google.inject.internal.InternalContext,com.google.inject.internal.SingleParameterInjector[])"
    - Src: "com.google.inject.internal.ConstructorInjector:114,1"
      Dst: "[com.google.inject.internal.ConstructionProxy].newInstance(java.lang.Object[])"
    - Src: "com.google.inject.internal.ConstructorInjector:115,1"
      Dst: "[com.google.inject.internal.ConstructionContext].setProxyDelegates(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorInjector:117,1"
      Dst: "[com.google.inject.internal.ConstructionContext].finishConstruction()"
    - Src: "com.google.inject.internal.ConstructorInjector:121,1"
      Dst: "[com.google.inject.internal.ConstructionContext].setCurrentReference(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorInjector:124,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object,com.google.inject.internal.InternalContext,boolean)"
    - Src: "com.google.inject.internal.ConstructorInjector:125,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].notifyListeners(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorInjector:133,1"
      Dst: "[com.google.inject.internal.ConstructionContext].removeCurrentReference()"
    - Src: "com.google.inject.internal.ConstructorInjector:129,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getCause()"
    - Src: "com.google.inject.internal.ConstructorInjector:130,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInjectingConstructor(java.lang.Throwable)"
    - Src: "com.google.inject.internal.ConstructorInjector:131,1"
      Dst: "[com.google.inject.internal.ConstructionProxy].getInjectionPoint()"
    - Src: "com.google.inject.internal.ConstructorInjector:131,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].setCurrentReference(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructionContext].removeCurrentReference()"
    functionSourceFile: "com.google.inject.internal.ConstructionContext"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl$Factory"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 301
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[com.google.inject.internal.InternalProvisionException].jitDisabled(com.google.inject.Key)"
    - "[com.google.inject.internal.ConstructorInjector].construct(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    functionUses: 12
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl$Factory:290"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:294"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:293"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl$Factory:294"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:300"
        BranchSideFuncs:
        - "jitDisabled(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:299"
        BranchSideFuncs:
        - "construct(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl$Factory:294"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:300"
        BranchSideFuncs:
        - "jitDisabled(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl$Factory:299"
        BranchSideFuncs:
        - "construct(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl$Factory:291,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl$Factory:295,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].jitDisabled(com.google.inject.Key)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl$Factory:300,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].construct(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.GeneratedClassDefiner].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.GeneratedClassDefiner"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding$mergeMethods__49].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_computeIfAbsent_0__94].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__184].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache$lambda_merge_2__91].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__180].apply(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.logger.LazyLoggers$1].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationErrorHints$lambda_areSimilarLookingTypes_0__191].apply(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CollectCollectors$combine__176].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.GeneratedClassDefiner:36,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "com.google.inject.internal.aop.GeneratedClassDefiner:36,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$equals__190].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$equals__190"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$equals__190:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$equals__190:-1,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ConstructorBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ConstructorBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.internal.ConstructorBindingImpl].create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.AbstractBindingProcessor].invalidBinding(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.ConstructorBinding].getConstructor()"
    functionUses: 1
    ICount: 31
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:75,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.BindingProcessor$1:81,1"
      Dst: "[com.google.inject.spi.ConstructorBinding].getConstructor()"
    - Src: "com.google.inject.internal.BindingProcessor$1:78,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].create(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    - Src: "com.google.inject.internal.BindingProcessor$1:87,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:88,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:90,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.BindingProcessor$1:90,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.BindingProcessor$1:91,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].invalidBinding(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingProcessor$1:93,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.InstanceBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.internal.InstanceBindingImpl].getInjectionPoints()"
    - "[com.google.inject.internal.InstanceBindingImpl].getInstance()"
    - "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.InstanceBinding].getInjectionPoints()"
    - "[com.google.inject.spi.InstanceBinding].getInstance()"
    functionUses: 1
    ICount: 31
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:98,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.BindingProcessor$1:99,1"
      Dst: "[com.google.inject.spi.InstanceBinding].getInjectionPoints()"
    - Src: "com.google.inject.internal.BindingProcessor$1:100,1"
      Dst: "[com.google.inject.spi.InstanceBinding].getInstance()"
    - Src: "com.google.inject.internal.BindingProcessor$1:111,1"
      Dst: "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.BindingProcessor$1:119,1"
      Dst: "[com.google.inject.internal.ConstantFactory].<init>(com.google.inject.internal.Initializable)"
    - Src: "com.google.inject.internal.BindingProcessor$1:121,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:122,1"
      Dst: "[com.google.inject.internal.InstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,java.util.Set,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingProcessor$1:122,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:125,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderInstanceBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 155
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderInstanceBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getUserSuppliedProvider()"
    - "[com.google.inject.internal.BindingProcessor$1].visitInternalProviderInstanceBindingFactory(com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].getInjectionPoints()"
    - "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].<init>(com.google.inject.internal.Initializable,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - "[com.google.inject.spi.ProviderInstanceBinding].getInjectionPoints()"
    functionUses: 6
    ICount: 42
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingProcessor$1:132"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor$1:137"
        BranchSideFuncs:
        - "<init>(com.google.inject.internal.Initializable,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
        - "putBinding(com.google.inject.internal.BindingImpl)"
        - "get(com.google.inject.Binding)"
        - "valueOf(boolean)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
        - "getInjectionPoints()"
        - "requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
        - "scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:130,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.BindingProcessor$1:131,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getUserSuppliedProvider()"
    - Src: "com.google.inject.internal.BindingProcessor$1:136,1"
      Dst: "[com.google.inject.internal.BindingProcessor$1].visitInternalProviderInstanceBindingFactory(com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory)"
    - Src: "com.google.inject.internal.BindingProcessor$1:138,1"
      Dst: "[com.google.inject.spi.ProviderInstanceBinding].getInjectionPoints()"
    - Src: "com.google.inject.internal.BindingProcessor$1:140,1"
      Dst: "[com.google.inject.internal.Initializer].requestInjection(com.google.inject.internal.InjectorImpl,com.google.inject.TypeLiteral,java.lang.Object,com.google.inject.Binding,java.lang.Object,java.util.Set,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.BindingProcessor$1:148,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.BindingProcessor$1:148,1"
      Dst: "[com.google.inject.internal.InternalFactoryToInitializableAdapter].<init>(com.google.inject.internal.Initializable,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    - Src: "com.google.inject.internal.BindingProcessor$1:150,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:151,1"
      Dst: "[com.google.inject.internal.ProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,jakarta.inject.Provider,java.util.Set)"
    - Src: "com.google.inject.internal.BindingProcessor$1:151,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:154,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visitInternalProviderInstanceBindingFactory(com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 225
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl].getInitializationTiming()"
    - "[java.lang.Enum].ordinal()"
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleDelayedInitialization(com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - "[java.lang.AssertionError].<init>()"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 31
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:211,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:211,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:213,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl].getInitializationTiming()"
    - Src: "com.google.inject.internal.BindingProcessor$1:213,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "com.google.inject.internal.BindingProcessor$1:215,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleDelayedInitialization(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:218,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].scheduleInitialization(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:221,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "com.google.inject.internal.BindingProcessor$1:223,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:224,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderKeyBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderKeyBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].getProviderKey()"
    - "[com.google.inject.internal.BoundProviderFactory].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.ProviderKeyBinding].getProviderKey()"
    functionUses: 1
    ICount: 33
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:159,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.BindingProcessor$1:161,1"
      Dst: "[com.google.inject.spi.ProviderKeyBinding].getProviderKey()"
    - Src: "com.google.inject.internal.BindingProcessor$1:169,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    - Src: "com.google.inject.internal.BindingProcessor$1:169,1"
      Dst: "[com.google.inject.internal.BoundProviderFactory].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    - Src: "com.google.inject.internal.BindingProcessor$1:170,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - Src: "com.google.inject.internal.BindingProcessor$1:172,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:178,1"
      Dst: "[com.google.inject.internal.LinkedProviderBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingProcessor$1:178,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:181,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BoundProviderFactory].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.ProvisionListenerStackCallback)"
    functionSourceFile: "com.google.inject.internal.BoundProviderFactory"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.ProvisionListenerStackCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BoundProviderFactory:37,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.LinkedKeyBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 200
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.LinkedKeyBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Errors].recursiveBinding(com.google.inject.Key,com.google.inject.Key)"
    - "[com.google.inject.internal.FactoryProxy].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
    - "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.LinkedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    functionUses: 1
    ICount: 37
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingProcessor$1:188"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingProcessor$1:192"
        BranchSideFuncs:
        - "putBinding(com.google.inject.internal.BindingImpl)"
        - "addCreationListener(com.google.inject.internal.CreationListener)"
        - "valueOf(boolean)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
        - "scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:186,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].prepareBinding()"
    - Src: "com.google.inject.internal.BindingProcessor$1:187,1"
      Dst: "[com.google.inject.spi.LinkedKeyBinding].getLinkedKey()"
    - Src: "com.google.inject.internal.BindingProcessor$1:188,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.BindingProcessor$1:190,1"
      Dst: "[com.google.inject.internal.Errors].recursiveBinding(com.google.inject.Key,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingProcessor$1:193,1"
      Dst: "[com.google.inject.internal.FactoryProxy].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,com.google.inject.Key,java.lang.Object)"
    - Src: "com.google.inject.internal.BindingProcessor$1:194,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    - Src: "com.google.inject.internal.BindingProcessor$1:196,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.BindingProcessor$1:197,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.Key)"
    - Src: "com.google.inject.internal.BindingProcessor$1:197,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor].putBinding(com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.BindingProcessor$1:199,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.UntargettedBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.UntargettedBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:229,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ExposedBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ExposedBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:234,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ConvertedConstantBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ConvertedConstantBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:239,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ProviderBinding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ProviderBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:244,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingProcessor$1].visitOther(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.internal.BindingProcessor$1"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingProcessor$1:249,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassDefining$ClassDefinerHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ClassDefining$ClassDefinerHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassDefining$ClassDefinerHolder:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ClassOwnership$1LocalClass].<init>()"
    functionSourceFile: "com.google.common.reflect.Types$ClassOwnership$1LocalClass"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ClassOwnership$1LocalClass:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$1].load(com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "com.google.inject.internal.ProvisionListenerStackCallback"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].create(com.google.inject.Binding)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$1:54,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].create(com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$1].load(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$1].load(com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$1:51,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore$1].load(com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$getErrorDetail__62].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.Messages$getErrorDetail__62"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages$getErrorDetail__62].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$getErrorDetail__62:-1,1"
      Dst: "[com.google.inject.internal.Messages$getErrorDetail__62].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$getErrorDetail__62].<init>()"
    functionSourceFile: "com.google.inject.internal.Messages$getErrorDetail__62"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$getErrorDetail__62:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$getErrorDetail__62].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Messages$getErrorDetail__62"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].getErrorDetail()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$getErrorDetail__62:-1,1"
      Dst: "[com.google.inject.spi.Message].getErrorDetail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getAnnotations(java.lang.reflect.Field)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isNullable(java.lang.reflect.Field)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getIsParameterKotlinNullablePredicate(java.lang.reflect.Constructor)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].getIsParameterKotlinNullablePredicate(java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].checkConstructorParameterAnnotations(java.lang.reflect.Constructor,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isLocalClass(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isValueClass(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isKotlinClass(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinUnsupported"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$4].<init>()"
    functionSourceFile: "com.google.inject.internal.Scoping$4"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Scoping].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$4:117,1"
      Dst: "[com.google.inject.internal.Scoping].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$4].acceptVisitor(com.google.inject.spi.BindingScopingVisitor)"
    functionSourceFile: "com.google.inject.internal.Scoping$4"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingScopingVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$3].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.spi.DefaultBindingScopingVisitor].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.Scopes$2].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.internal.Indexer:com.google.inject.util.Modules$OverrideModule$4].visitScope(com.google.inject.Scope)"
    - "[com.google.inject.spi.BindingScopingVisitor].visitScope(com.google.inject.Scope)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$4:120,1"
      Dst: "[com.google.inject.spi.BindingScopingVisitor].visitScope(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$4].getScopeInstance()"
    functionSourceFile: "com.google.inject.internal.Scoping$4"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "com.google.inject.Scope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$4].toString()"
    functionSourceFile: "com.google.inject.internal.Scoping$4"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Scopes$1].toString()"
    - "[com.google.inject.internal.SingletonScope].toString()"
    - "[com.google.inject.Scope].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$4:130,1"
      Dst: "[com.google.inject.Scope].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionSourceFile: "com.google.inject.internal.Scoping$4"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.binder.ScopedBindingBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingBuilder].in(com.google.inject.Scope)"
    - "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Scoping$4:135,1"
      Dst: "[com.google.inject.binder.ScopedBindingBuilder].in(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.Indexer$IndexedBinding"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 91
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 56
    ICount: 32
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:81"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:84"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:83"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:86"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:87"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Indexer$IndexedBinding:90"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Indexer$IndexedBinding:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:86,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:87,1"
      Dst: "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:89,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 11
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.Indexer$IndexedBinding].hashCode()"
    functionSourceFile: "com.google.inject.internal.Indexer$IndexedBinding"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$IndexedBinding:95,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$FormatOptions].values()"
    functionSourceFile: "com.google.inject.internal.Messages$FormatOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Messages$FormatOptions[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$FormatOptions:275,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$FormatOptions].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages$FormatOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Messages$FormatOptions"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$FormatOptions:275,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$FormatOptions].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages$FormatOptions"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages$FormatOptions:285,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages$FormatOptions].$values()"
    functionSourceFile: "com.google.inject.internal.Messages$FormatOptions"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "com.google.inject.internal.Messages$FormatOptions[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BoundProviderFactory].notify(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.BoundProviderFactory"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getInternalFactory(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.ErrorsException].getErrors()"
    - "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BoundProviderFactory:48,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.BoundProviderFactory:47,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getInternalFactory(com.google.inject.Key,com.google.inject.internal.Errors,com.google.inject.internal.InjectorImpl$JitLimitation)"
    - Src: "com.google.inject.internal.BoundProviderFactory:50,1"
      Dst: "[com.google.inject.internal.ErrorsException].getErrors()"
    - Src: "com.google.inject.internal.BoundProviderFactory:50,1"
      Dst: "[com.google.inject.internal.Errors].merge(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.BoundProviderFactory"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingImpl$1].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.FactoryProxy].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$CyclicFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProvidedByInternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ExposedKeyFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.BoundProviderFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl$1:com.google.inject.internal.InjectorShell$InjectorFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionUses: 12
    ICount: 14
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BoundProviderFactory:58,1"
      Dst: "[com.google.inject.internal.InternalFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    - Src: "com.google.inject.internal.BoundProviderFactory:59,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].circularGet(jakarta.inject.Provider,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,com.google.inject.internal.ProvisionListenerStackCallback)"
    - Src: "com.google.inject.internal.BoundProviderFactory:61,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BoundProviderFactory].provision(jakarta.inject.Provider<?\
      \ extends T>,com.google.inject.spi.Dependency<?>,com.google.inject.internal.ConstructionContext<T>)"
    functionSourceFile: "com.google.inject.internal.BoundProviderFactory"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionDepth: 11
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "jakarta.inject.Provider<? extends T>"
    - "com.google.inject.spi.Dependency<?>"
    - "com.google.inject.internal.ConstructionContext<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BoundProviderFactory:72,1"
      Dst: "[com.google.inject.internal.ProviderInternalFactory].provision(jakarta.inject.Provider,com.google.inject.spi.Dependency,com.google.inject.internal.ConstructionContext)"
    - Src: "com.google.inject.internal.BoundProviderFactory:74,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].errorInProvider(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BoundProviderFactory].toString()"
    functionSourceFile: "com.google.inject.internal.BoundProviderFactory"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].toString()"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BoundProviderFactory:80,1"
      Dst: "[com.google.inject.Key].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjectorStore].get(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ConstructorInjectorStore"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "com.google.inject.internal.ConstructorInjector<?>"
    argCount: 2
    argTypes:
    - "com.google.inject.spi.InjectionPoint"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.FailableCache].get(java.lang.Object,com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjectorStore:53,1"
      Dst: "[com.google.inject.internal.FailableCache].get(java.lang.Object,com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$RequireExactBindingAnnotationsModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.util.Modules$RequireExactBindingAnnotationsModule"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].requireExactBindingAnnotations()"
    - "[com.google.inject.Binder].requireExactBindingAnnotations()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$RequireExactBindingAnnotationsModule:465,1"
      Dst: "[com.google.inject.Binder].requireExactBindingAnnotations()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PackageNameCompressor$length__65].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.PackageNameCompressor$length__65"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PackageNameCompressor$length__65:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.PackageNameCompressor$length__65:-1,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExplicitBindingsOption].<init>(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.RequireExplicitBindingsOption"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:33,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExplicitBindingsOption].getSource()"
    functionSourceFile: "com.google.inject.spi.RequireExplicitBindingsOption"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExplicitBindingsOption].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.RequireExplicitBindingsOption"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireExplicitBindingsOption].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].requireExplicitBindings()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].requireExplicitBindings()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:43,1"
      Dst: "[com.google.inject.spi.RequireExplicitBindingsOption].getSource()"
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:43,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:43,1"
      Dst: "[com.google.inject.Binder].requireExplicitBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.RequireExplicitBindingsOption].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.RequireExplicitBindingsOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorOptionsProcessor].visit(com.google.inject.spi.RequireExplicitBindingsOption)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.RequireExplicitBindingsOption)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireExplicitBindingsOption)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.RequireExplicitBindingsOption:48,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.RequireExplicitBindingsOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$new$0(java.lang.Object)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ChildBindingAlreadySetError$lambda_new_0__108:-1,1"
      Dst: "[com.google.inject.internal.ChildBindingAlreadySetError].lambda$new$0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$2].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$2"
    linkageType: ""
    functionLinenumber: 564
    functionLinenumberEnd: 566
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$2:565,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$2].newArrayType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$2"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 572
    functionDepth: 1
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].getArrayClass(java.lang.Class)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$JavaVersion$2:568"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$2:571"
        BranchSideFuncs:
        - "getArrayClass(java.lang.Class)"
      - BranchSide: "com.google.common.reflect.Types$JavaVersion$2:570"
        BranchSideFuncs:
        - "<init>(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$2:569,1"
      Dst: "[com.google.common.reflect.Types].getArrayClass(java.lang.Class)"
    - Src: "com.google.common.reflect.Types$JavaVersion$2:571,1"
      Dst: "[com.google.common.reflect.Types$GenericArrayTypeImpl].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$2].usedInGenericType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$2"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$2:577,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider$lambda_new_0__93:-1,1"
      Dst: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].lambda$new$0(com.google.inject.internal.RealMultibinder$BindingSelection)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 345
    functionDepth: 1
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMultibinder$BindingSelection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getProviderDependencies()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:344,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getProviderDependencies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$1].visit(com.google.inject.spi.ModuleAnnotatedMethodScannerBinding)"
    functionSourceFile: "com.google.inject.util.Modules$1"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ModuleAnnotatedMethodScannerBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$1:400,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].bootstrap$(com.google.common.reflect.Types$JavaVersion)"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Function"
    argCount: 1
    argTypes:
    - "com.google.common.reflect.Types$JavaVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].<init>(com.google.common.reflect.Types$JavaVersion)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13:-1,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].<init>(com.google.common.reflect.Types$JavaVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].<init>(com.google.common.reflect.Types$JavaVersion)"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.common.reflect.Types$JavaVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].apply(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$4].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    functionUses: 43
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13:-1,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$BindingType].values()"
    functionSourceFile: "com.google.inject.internal.Indexer$BindingType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Indexer$BindingType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$BindingType:49,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$BindingType].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Indexer$BindingType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.Indexer$BindingType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$BindingType:49,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$BindingType].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.Indexer$BindingType"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Indexer$BindingType:49,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Indexer$BindingType].$values()"
    functionSourceFile: "com.google.inject.internal.Indexer$BindingType"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "com.google.inject.internal.Indexer$BindingType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].bindInterceptor(com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "org.aopalliance.intercept.MethodInterceptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.inject.matcher.Matchers].any()"
    - "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:70"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.EncounterImpl:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:63,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:67,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.EncounterImpl:70,1"
      Dst: "[com.google.inject.matcher.Matchers].any()"
    - Src: "com.google.inject.internal.EncounterImpl:70,1"
      Dst: "[com.google.inject.internal.MethodAspect].<init>(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    - Src: "com.google.inject.internal.EncounterImpl:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.EncounterImpl].register(com.google.inject.MembersInjector<?\
      \ super T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.MembersInjector<? super T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:89"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:93"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.EncounterImpl:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:87,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:90,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.EncounterImpl:93,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.EncounterImpl].register(com.google.inject.spi.InjectionListener<?\
      \ super T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.InjectionListener<? super T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.EncounterImpl:100"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.EncounterImpl:104"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.EncounterImpl:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:98,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:101,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.internal.EncounterImpl:104,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.EncounterImpl].addError(java.lang.String,java.lang.Object[])"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.Errors].addMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:109,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:110,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].addError(java.lang.Throwable)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[java.lang.Throwable].getMessage()"
    - "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:115,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:116,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.internal.EncounterImpl:116,1"
      Dst: "[com.google.inject.internal.Errors].errorInUserCode(java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].addError(com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:121,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:122,1"
      Dst: "[com.google.inject.internal.Errors].addMessage(com.google.inject.spi.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].getProvider(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.Lookups].getProvider(com.google.inject.Key)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:127,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:128,1"
      Dst: "[com.google.inject.internal.Lookups].getProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].getProvider(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.internal.EncounterImpl].getProvider(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:133,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.internal.EncounterImpl:133,1"
      Dst: "[com.google.inject.internal.EncounterImpl].getProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].getMembersInjector(com.google.inject.TypeLiteral<T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.Lookups].getMembersInjector(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:138,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.EncounterImpl:139,1"
      Dst: "[com.google.inject.internal.Lookups].getMembersInjector(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.EncounterImpl].getMembersInjector(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.internal.EncounterImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.internal.EncounterImpl].getMembersInjector(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.EncounterImpl:144,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.internal.EncounterImpl:144,1"
      Dst: "[com.google.inject.internal.EncounterImpl].getMembersInjector(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError].isMergeable(com.google.inject.spi.ErrorDetail<?>)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.Binding].getKey()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingAlreadySetError:28"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingAlreadySetError:28"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.BindingAlreadySetError:27"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.BindingAlreadySetError:29"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingAlreadySetError:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError:29,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:29,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.BindingAlreadySetError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].bootstrap$()"
    - "[java.util.Collection].stream()"
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].bootstrap$()"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].size()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.inject.spi.Element].getSource()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "com.google.inject.internal.BindingAlreadySetError:43"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.BindingAlreadySetError:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:35,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:35,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:35,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:38,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:38,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError$lambda_formatDetail_0__142].bootstrap$()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:39,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:39,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError$of__143].bootstrap$()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:41,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:41,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:37,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:42,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:42,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.BindingAlreadySetError:43,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.BindingAlreadySetError:44,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.BindingAlreadySetError:44,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$of__143].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$of__143"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError$of__143].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$of__143:-1,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError$of__143].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$of__143].<init>()"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$of__143"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$of__143:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 7
    returnType: "com.google.inject.internal.BindingAlreadySetError"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingAlreadySetError].<init>(com.google.inject.Binding,com.google.inject.Binding,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError:50,1"
      Dst: "[com.google.inject.internal.BindingAlreadySetError].<init>(com.google.inject.Binding,com.google.inject.Binding,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingConstructorError].isMergeable(com.google.inject.spi.ErrorDetail<?>)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ErrorDetail<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingConstructorError:30"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:35"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingConstructorError:34"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingConstructorError:32"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:31"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.MissingConstructorError:30"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingConstructorError:33"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError:32,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.MissingConstructorError:33,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MissingConstructorError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 77
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[java.lang.Class].getModifiers()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].bootstrap$(java.util.List)"
    - "[com.google.common.collect.RegularImmutableAsList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.ImmutableList].forEach(java.util.function.Consumer)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].forEach(java.util.function.Consumer)"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.ArrayList:java.util.concurrent.ArrayBlockingQueue$Itr].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    - "[com.google.common.collect.Lists].reverse(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 58
    EdgeCount: 141
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MissingConstructorError:42"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:48"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingConstructorError:47"
        BranchSideFuncs:
        - "getDeclaredConstructor(java.lang.Class[])"
        - "getRawType()"
    - Branch String: "com.google.inject.internal.MissingConstructorError:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:57"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingConstructorError:56"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.MissingConstructorError:57"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:65"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPrivate(int)"
      - BranchSide: "com.google.inject.internal.MissingConstructorError:64"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "format(java.lang.String,java.lang.Object[])"
        - "next()"
        - "bold(java.lang.String)"
        - "getSources()"
        - "bootstrap$(java.util.List)"
        - "<init>()"
        - "iterator()"
        - "forEach(java.util.function.Consumer)"
    - Branch String: "com.google.inject.internal.MissingConstructorError:58"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:65"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.MissingConstructorError:64"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "format(java.lang.String,java.lang.Object[])"
        - "next()"
        - "bold(java.lang.String)"
        - "getSources()"
        - "bootstrap$(java.util.List)"
        - "<init>()"
        - "iterator()"
        - "forEach(java.util.function.Consumer)"
    - Branch String: "com.google.inject.internal.MissingConstructorError:73"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MissingConstructorError:76"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "formatSources(int,java.util.List,java.util.Formatter)"
        - "reverse(java.util.List)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.MissingConstructorError:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError:40,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.MissingConstructorError:41,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.MissingConstructorError:50,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "com.google.inject.internal.MissingConstructorError:57,1"
      Dst: "[java.lang.reflect.Constructor].getModifiers()"
    - Src: "com.google.inject.internal.MissingConstructorError:57,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    - Src: "com.google.inject.internal.MissingConstructorError:58,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.MissingConstructorError:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "com.google.inject.internal.MissingConstructorError:68,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.MissingConstructorError:68,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.MissingConstructorError:69,1"
      Dst: "[com.google.inject.internal.MissingConstructorError$lambda_formatDetail_0__144].bootstrap$(java.util.List)"
    - Src: "com.google.inject.internal.MissingConstructorError:69,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    - Src: "com.google.inject.internal.MissingConstructorError:71,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.MissingConstructorError:73,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.MissingConstructorError:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.MissingConstructorError:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.MissingConstructorError:74,1"
      Dst: "[com.google.common.collect.Lists].reverse(java.util.List)"
    - Src: "com.google.inject.internal.MissingConstructorError:74,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(int,java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[com.google.inject.internal.MissingConstructorError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.MissingConstructorError"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "com.google.inject.internal.MissingConstructorError"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingConstructorError:80,1"
      Dst: "[com.google.inject.internal.MissingConstructorError].<init>(com.google.inject.TypeLiteral,boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$1].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$1"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$ColorizeOption$1:122,1"
      Dst: "[com.google.inject.internal.InternalFlags$ColorizeOption].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$ColorizeOption$1].enabled()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$ColorizeOption$1"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].console()"
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalFlags$ColorizeOption$1:125"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFlags$ColorizeOption$1:124"
        BranchSideFuncs:
        - "getenv(java.lang.String)"
        - "console()"
    - Branch String: "com.google.inject.internal.InternalFlags$ColorizeOption$1:125"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalFlags$ColorizeOption$1:124"
        BranchSideFuncs:
        - "getenv(java.lang.String)"
        - "console()"
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$ColorizeOption$1:125,1"
      Dst: "[java.lang.System].console()"
    - Src: "com.google.inject.internal.InternalFlags$ColorizeOption$1:125,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types$JavaVersion$4].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$4"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$4:610,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$4].newArrayType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$4"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 614
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$2].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$1].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$4:613,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$4].usedInGenericType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$4"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$1].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$2].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    functionUses: 4
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$4:618,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$4].typeName(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$4"
    linkageType: ""
    functionLinenumber: 622
    functionLinenumberEnd: 624
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$3].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].typeName(java.lang.reflect.Type)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$4:623,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$4].jdkTypeDuplicatesOwnerName()"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$4"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 629
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$0(java.util.Map,java.lang.reflect.Method)"
    functionUses: 25
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].lambda$buildEnhancerBuilder$0(java.util.Map,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].applyAsInt(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.String)"
    - "[java.util.function.ToIntFunction].applyAsInt(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:330"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:330,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:331,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie].applyAsInt(java.lang.String)"
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:332,1"
      Dst: "[java.util.function.ToIntFunction].applyAsInt(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].applyAsInt(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].applyAsInt(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ImmutableStringTrie$Overflow:315,1"
      Dst: "[com.google.inject.internal.aop.ImmutableStringTrie$Overflow].applyAsInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency<?>,boolean)"
    functionSourceFile: "com.google.inject.internal.ConstantFactory"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency<?>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Initializer$InjectableReference].get()"
    - "[com.google.inject.internal.Initializables$1].get()"
    - "[com.google.inject.internal.Initializable].get()"
    functionUses: 12
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantFactory:34,1"
      Dst: "[com.google.inject.internal.Initializable].get()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstantFactory].toString()"
    functionSourceFile: "com.google.inject.internal.ConstantFactory"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    functionUses: 21
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstantFactory:39,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstantFactory:39,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstantFactory:39,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.util.Modules$OverrideModule$2].lambda$visit$0(com.google.inject.Scope)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$2$lambda_visit_0__53:-1,1"
      Dst: "[com.google.inject.util.Modules$OverrideModule$2].lambda$visit$0(com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$1].convert(java.lang.String,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].valueOf(char)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.TypeConverterBindingProcessor$1:60"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor$1:63"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor$1:62"
        BranchSideFuncs:
        - "valueOf(char)"
        - "charAt(int)"
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:59,1"
      Dst: "[java.lang.String].trim()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:60,1"
      Dst: "[java.lang.String].length()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:61,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:63,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$1:63,1"
      Dst: "[java.lang.Character].valueOf(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$1].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 355
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].getBindings()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[com.google.inject.Binding].getProvider()"
    functionUses: 1
    ICount: 15
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:350"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:353"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "getProvider()"
        - "iterator()"
        - "next()"
        - "getBindings()"
      - BranchSide: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:352"
        BranchSideFuncs:
        - "build()"
    Callsites:
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:349,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:350,1"
      Dst: "[com.google.inject.internal.RealMultibinder$BindingSelection].getBindings()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:350,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:350,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:350,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:351,1"
      Dst: "[com.google.inject.Binding].getProvider()"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:351,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:353,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].<init>()"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].getSuperclassTypeParameter(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.TypeLiteral:75,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.TypeLiteral:75,1"
      Dst: "[com.google.inject.TypeLiteral].getSuperclassTypeParameter(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:76,1"
      Dst: "[com.google.inject.internal.MoreTypes].getRawType(java.lang.reflect.Type)"
    - Src: "com.google.inject.TypeLiteral:77,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getSuperclassTypeParameter(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getGenericSuperclass()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:94"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:97"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:93,1"
      Dst: "[java.lang.Class].getGenericSuperclass()"
    - Src: "com.google.inject.TypeLiteral:95,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "com.google.inject.TypeLiteral:98,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.inject.TypeLiteral:98,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalize(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].fromSuperclassTypeParameter(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getSuperclassTypeParameter(java.lang.Class)"
    - "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:103,1"
      Dst: "[com.google.inject.TypeLiteral].getSuperclassTypeParameter(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:103,1"
      Dst: "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].get(java.lang.Class<T>)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 4
    returnType: "com.google.inject.TypeLiteral<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    functionUses: 26
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:150,1"
      Dst: "[com.google.inject.TypeLiteral].<init>(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getSupertype(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionDepth: 7
    returnType: "com.google.inject.TypeLiteral<?>"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:239,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:238,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:240,1"
      Dst: "[com.google.inject.internal.MoreTypes].getGenericSupertype(java.lang.reflect.Type,java.lang.Class,java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:240,1"
      Dst: "[com.google.inject.TypeLiteral].resolve(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.TypeLiteral].getExceptionTypes(java.lang.reflect.Member)"
    functionSourceFile: "com.google.inject.TypeLiteral"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.List<TypeLiteral<?>>"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].getGenericExceptionTypes()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getGenericExceptionTypes()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Member)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[com.google.inject.TypeLiteral].resolveAll(java.lang.reflect.Type[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.TypeLiteral:301"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:301"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:300"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.TypeLiteral:301"
      Branch Sides:
      - BranchSide: "com.google.inject.TypeLiteral:320"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.TypeLiteral:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.TypeLiteral:304,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:304,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.TypeLiteral:303,1"
      Dst: "[com.google.common.base.Preconditions].checkArgument(boolean,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.TypeLiteral:308,1"
      Dst: "[java.lang.reflect.Method].getGenericExceptionTypes()"
    - Src: "com.google.inject.TypeLiteral:313,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "com.google.inject.TypeLiteral:317,1"
      Dst: "[java.lang.reflect.Constructor].getGenericExceptionTypes()"
    - Src: "com.google.inject.TypeLiteral:320,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Member)"
    - Src: "com.google.inject.TypeLiteral:320,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "com.google.inject.TypeLiteral:323,1"
      Dst: "[com.google.inject.TypeLiteral].resolveAll(java.lang.reflect.Type[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProxyFactory].getInterceptors()"
    functionSourceFile: "com.google.inject.internal.ProxyFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProxyFactory].create()"
    functionSourceFile: "com.google.inject.internal.ProxyFactory"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 156
    functionDepth: 2
    returnType: "com.google.inject.internal.ConstructionProxy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableMap].isEmpty()"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    - "[com.google.inject.internal.ProxyFactory$ProxyConstructor].<init>(com.google.inject.spi.InjectionPoint,java.util.function.Function,com.google.common.collect.ImmutableMap,java.lang.reflect.InvocationHandler[])"
    - "[com.google.inject.internal.Errors].<init>()"
    - "[com.google.inject.internal.Errors].errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.Errors].toException()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    functionUses: 1
    ICount: 25
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProxyFactory:144"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProxyFactory:151"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.InjectionPoint)"
        - "create()"
      - BranchSide: "com.google.inject.internal.ProxyFactory:150"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.InjectionPoint,java.util.function.Function,com.google.common.collect.ImmutableMap,java.lang.reflect.InvocationHandler[])"
    Callsites:
    - Src: "com.google.inject.internal.ProxyFactory:144,1"
      Dst: "[com.google.common.collect.ImmutableMap].isEmpty()"
    - Src: "com.google.inject.internal.ProxyFactory:145,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory].<init>(com.google.inject.spi.InjectionPoint)"
    - Src: "com.google.inject.internal.ProxyFactory:145,1"
      Dst: "[com.google.inject.internal.DefaultConstructionProxyFactory].create()"
    - Src: "com.google.inject.internal.ProxyFactory:151,1"
      Dst: "[com.google.inject.internal.ProxyFactory$ProxyConstructor].<init>(com.google.inject.spi.InjectionPoint,java.util.function.Function,com.google.common.collect.ImmutableMap,java.lang.reflect.InvocationHandler[])"
    - Src: "com.google.inject.internal.ProxyFactory:153,1"
      Dst: "[com.google.inject.internal.Errors].<init>()"
    - Src: "com.google.inject.internal.ProxyFactory:154,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ProxyFactory:154,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.ProxyFactory:154,1"
      Dst: "[com.google.inject.internal.Errors].errorEnhancingClass(java.lang.Class,java.lang.Throwable)"
    - Src: "com.google.inject.internal.ProxyFactory:155,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].formatDetail(java.util.List<ErrorDetail<?>>,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 94
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<ErrorDetail<?>>"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.EmptyImmutableListMultimap].asMap()"
    - "[com.google.common.collect.EmptyImmutableSetMultimap].asMap()"
    - "[com.google.common.collect.ImmutableSortedMap].entrySet()"
    - "[com.google.common.collect.ImmutableMap].entrySet()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.ImmutableMultimap:com.google.common.collect.Iterators$3:com.google.common.collect.Sets$SubSet$1:java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].size()"
    - "[com.google.common.collect.Collections2$TransformedCollection].size()"
    - "[com.google.common.collect.AbstractTable$CellSet].size()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].size()"
    - "[com.google.common.collect.LinkedHashMultiset].size()"
    - "[com.google.common.graph.MapIteratorCache$1].size()"
    - "[com.google.common.collect.Maps$Values].size()"
    - "[com.google.common.collect.Multisets$3].size()"
    - "[com.google.common.collect.FilteredMultimapValues].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.JdkBackedImmutableSet].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.graph.UndirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.CompactHashSet].size()"
    - "[com.google.common.cache.LocalCache$AbstractCacheSet].size()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].size()"
    - "[com.google.common.collect.Multisets$ViewMultiset].size()"
    - "[com.google.common.graph.AbstractNetwork$1$1].size()"
    - "[com.google.common.collect.Maps$KeySet].size()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Collections2$PermutationCollection].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].size()"
    - "[com.google.common.collect.Collections2$FilteredCollection].size()"
    - "[com.google.common.collect.Sets$SubSet].size()"
    - "[com.google.common.cache.LocalCache$AccessQueue].size()"
    - "[com.google.common.collect.Multimaps$Keys].size()"
    - "[com.google.common.graph.EdgesConnecting].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.AbstractTable$Values].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.ConcurrentHashMultiset].size()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].size()"
    - "[com.google.common.collect.ImmutableMultimap$Values].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.DescendingImmutableSortedMultiset].size()"
    - "[com.google.common.collect.Sets$PowerSet].size()"
    - "[com.google.common.collect.Sets$5].size()"
    - "[com.google.common.collect.RegularImmutableTable$CellSet].size()"
    - "[com.google.common.collect.RegularContiguousSet].size()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].size()"
    - "[com.google.common.collect.ImmutableMultimap$Keys].size()"
    - "[com.google.common.collect.RegularImmutableSortedSet].size()"
    - "[com.google.common.cache.LocalCache$Values].size()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.ImmutableMultiset$ElementSet].size()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.ImmutableMapEntrySet].size()"
    - "[com.google.common.collect.RegularImmutableMap$KeySet].size()"
    - "[com.google.common.collect.Maps$EntrySet].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.collect.Sets$4].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.graph.DirectedGraphConnections$2].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.ImmutableMapKeySet].size()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Sets$2].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.graph.DirectedMultiNetworkConnections$1].size()"
    - "[com.google.common.collect.EnumMultiset].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.AbstractMultimap$Values].size()"
    - "[com.google.common.collect.Multisets$ElementSet].size()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.graph.DirectedGraphConnections$1].size()"
    - "[com.google.common.collect.TreeMultiset].size()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].size()"
    - "[com.google.common.collect.RegularImmutableSortedMultiset].size()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].size()"
    - "[com.google.common.collect.JdkBackedImmutableMultiset].size()"
    - "[com.google.common.collect.Multimaps$Entries].size()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].size()"
    - "[com.google.common.collect.ImmutableMapValues].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.Sets$3].size()"
    - "[com.google.common.graph.AbstractBaseGraph$1].size()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].size()"
    - "[com.google.common.graph.IncidentEdgeSet].size()"
    - "[com.google.common.graph.DirectedGraphConnections$3].size()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].size()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].size()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].size()"
    - "[com.google.common.cache.LocalCache$WriteQueue].size()"
    - "[com.google.common.collect.HashMultiset].size()"
    - "[com.google.common.collect.Sets$1].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[java.util.ArrayDeque].size()"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].bootstrap$()"
    - "[com.google.common.collect.Sets$UnmodifiableNavigableSet].stream()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[com.google.common.collect.Sets$2].stream()"
    - "[com.google.common.collect.Sets$3].stream()"
    - "[com.google.common.collect.Sets$1].stream()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toSet()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - "[com.google.common.collect.ImmutableSet$CachingAsList:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.Formatter:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.CopyOnWriteArraySet].format(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.inject.internal.DuplicateElementError].formatElement(com.google.inject.internal.DuplicateElementError$Element,java.util.Formatter)"
    - "[com.google.common.base.CharMatcher$InRange].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[com.google.common.base.Suppliers$ExpiringMemoizingSupplier].toString()"
    - "[com.google.common.base.CharMatcher$Is].toString()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].toString()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].toString()"
    - "[com.google.common.base.JdkPattern].toString()"
    - "[com.google.inject.spi.Message].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternFromStringPredicate].toString()"
    - "[java.lang.Float].toString()"
    - "[com.google.common.collect.Synchronized$SynchronizedObject].toString()"
    - "[com.google.common.io.ByteSource$AsCharSource].toString()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSource].toString()"
    - "[com.google.common.base.Converter$ReverseConverter].toString()"
    - "[com.google.common.io.ByteSource$SlicedByteSource].toString()"
    - "[java.lang.Double].toString()"
    - "[com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].toString()"
    - "[com.google.inject.internal.Initializables$1].toString()"
    - "[com.google.common.eventbus.EventBus].toString()"
    - "[com.google.common.hash.Funnels$SinkAsStream].toString()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].toString()"
    - "[com.google.common.base.CharMatcher$Negated].toString()"
    - "[com.google.common.collect.CompoundOrdering].toString()"
    - "[com.google.common.base.Splitter$5].toString()"
    - "[com.google.common.graph.EndpointPair$Unordered].toString()"
    - "[com.google.common.collect.HashBasedTable].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[com.google.common.base.Equivalence$Wrapper].toString()"
    - "[com.google.common.collect.NullsFirstOrdering].toString()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].toString()"
    - "[com.google.common.collect.MapMaker].toString()"
    - "[java.lang.Throwable].toString()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[com.google.common.collect.TreeRangeMap].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[com.google.inject.internal.Scoping$6].toString()"
    - "[com.google.inject.internal.InternalFactoryToProviderAdapter].toString()"
    - "[com.google.common.io.ByteSource$ByteArrayByteSource].toString()"
    - "[com.google.inject.internal.ProviderToInternalFactoryAdapter].toString()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].toString()"
    - "[com.google.common.collect.Maps$BiMapConverter].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$5].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[com.google.common.math.PairedStats].toString()"
    - "[com.google.inject.internal.BoundProviderFactory].toString()"
    - "[com.google.inject.spi.ProviderLookup$1].toString()"
    - "[com.google.common.math.LinearTransformation$VerticalLinearTransformation].toString()"
    - "[com.google.common.collect.ContiguousSet].toString()"
    - "[com.google.common.reflect.AbstractInvocationHandler].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].toString()"
    - "[com.google.common.util.concurrent.Futures$CallbackListener].toString()"
    - "[com.google.common.collect.FluentIterable].toString()"
    - "[com.google.common.base.FunctionalEquivalence].toString()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].toString()"
    - "[com.google.common.util.concurrent.RateLimiter].toString()"
    - "[com.google.common.primitives.ImmutableIntArray].toString()"
    - "[com.google.common.reflect.TypeToken$1].toString()"
    - "[com.google.common.collect.ForwardingObject].toString()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].toString()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].toString()"
    - "[com.google.common.util.concurrent.AbstractService$4].toString()"
    - "[com.google.common.graph.ElementOrder].toString()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].toString()"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].toString()"
    - "[com.google.common.collect.ImmutableMultiset].toString()"
    - "[com.google.inject.internal.ExposedBindingImpl].toString()"
    - "[com.google.inject.spi.Dependency].toString()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].toString()"
    - "[com.google.common.collect.Multisets$AbstractEntry].toString()"
    - "[com.google.common.collect.Cut$BelowValue].toString()"
    - "[com.google.common.collect.DescendingMultiset].toString()"
    - "[com.google.common.base.Functions$ConstantFunction].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture].toString()"
    - "[com.google.common.base.CharMatcher$ForPredicate].toString()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].toString()"
    - "[com.google.common.collect.LexicographicalOrdering].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[com.google.common.primitives.ImmutableDoubleArray].toString()"
    - "[com.google.inject.spi.InjectionPoint].toString()"
    - "[com.google.common.collect.LinkedHashMultimap].toString()"
    - "[java.lang.Class].toString()"
    - "[com.google.common.io.Files$FileByteSource].toString()"
    - "[com.google.inject.internal.Initializer$InjectableReference].toString()"
    - "[java.lang.Thread].toString()"
    - "[com.google.common.util.concurrent.AbstractIdleService].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$2].toString()"
    - "[org.aopalliance.aop.AspectException].toString()"
    - "[com.google.common.base.Predicates$InPredicate].toString()"
    - "[com.google.common.primitives.ImmutableLongArray].toString()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].toString()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$1].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].toString()"
    - "[com.google.common.collect.HashMultimap].toString()"
    - "[com.google.common.collect.AbstractMultiset].toString()"
    - "[com.google.common.graph.AbstractNetwork].toString()"
    - "[com.google.common.cache.CacheBuilder].toString()"
    - "[com.google.common.collect.SingletonImmutableList].toString()"
    - "[com.google.common.graph.EndpointPair$Ordered].toString()"
    - "[com.google.common.collect.ImmutableMap].toString()"
    - "[com.google.common.io.BaseEncoding$SeparatedBaseEncoding].toString()"
    - "[com.google.inject.internal.Scoping$1].toString()"
    - "[com.google.common.collect.ArrayTable].toString()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].toString()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].toString()"
    - "[java.io.File].toString()"
    - "[com.google.inject.matcher.Matchers$InPackage].toString()"
    - "[com.google.inject.name.NamedImpl].toString()"
    - "[com.google.common.util.concurrent.AbstractService].toString()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].toString()"
    - "[com.google.inject.internal.LinkedBindingImpl].toString()"
    - "[com.google.common.collect.ExplicitOrdering].toString()"
    - "[com.google.common.collect.LinkedListMultimap].toString()"
    - "[com.google.common.base.Predicates$NotPredicate].toString()"
    - "[com.google.common.collect.AbstractMultimap].toString()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].toString()"
    - "[com.google.common.graph.AbstractValueGraph].toString()"
    - "[com.google.inject.internal.Scoping$3].toString()"
    - "[com.google.common.util.concurrent.ServiceManager$ServiceManagerState$2].toString()"
    - "[java.lang.Short].toString()"
    - "[com.google.common.io.MoreFiles$1].toString()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].toString()"
    - "[com.google.common.math.LinearTransformation$RegularLinearTransformation].toString()"
    - "[com.google.common.collect.Sets$5].toString()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    - "[com.google.common.collect.AbstractRangeSet].toString()"
    - "[com.google.common.base.CharMatcher$AnyOf].toString()"
    - "[com.google.common.collect.GeneralRange].toString()"
    - "[com.google.common.io.Resources$UrlByteSource].toString()"
    - "[com.google.common.base.Converter$ConverterComposition].toString()"
    - "[com.google.common.hash.SipHashFunction].toString()"
    - "[com.google.inject.internal.InjectorImpl$InjectorOptions].toString()"
    - "[com.google.inject.internal.InternalFactoryToInitializableAdapter].toString()"
    - "[com.google.inject.internal.InjectorImpl].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[com.google.inject.internal.ProviderMethod].toString()"
    - "[com.google.common.collect.Maps$DescendingMap].toString()"
    - "[com.google.common.util.concurrent.AbstractExecutionThreadService].toString()"
    - "[com.google.inject.internal.Scoping$7].toString()"
    - "[com.google.common.collect.ReverseOrdering].toString()"
    - "[com.google.common.base.Predicates$OrPredicate].toString()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    - "[com.google.inject.internal.Scoping$2].toString()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].toString()"
    - "[com.google.common.base.Suppliers$ThreadSafeSupplier].toString()"
    - "[com.google.inject.internal.InstanceBindingImpl].toString()"
    - "[com.google.inject.spi.ScopeBinding].toString()"
    - "[com.google.inject.spi.ProviderLookup].toString()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].toString()"
    - "[com.google.common.collect.ByFunctionOrdering].toString()"
    - "[com.google.common.collect.SingletonImmutableSet].toString()"
    - "[com.google.inject.internal.BindingImpl].toString()"
    - "[com.google.common.io.MoreFiles$2].toString()"
    - "[com.google.common.base.Enums$StringConverter].toString()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].toString()"
    - "[org.checkerframework.checker.formatter.qual.ConversionCategory].toString()"
    - "[com.google.common.collect.Range].toString()"
    - "[com.google.common.net.MediaType].toString()"
    - "[com.google.inject.internal.ConstantFactory].toString()"
    - "[com.google.common.collect.Tables$AbstractCell].toString()"
    - "[com.google.common.base.Functions$FunctionComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDouble].toString()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].toString()"
    - "[com.google.common.base.CharMatcher$Or].toString()"
    - "[com.google.common.net.HostAndPort].toString()"
    - "[com.google.common.base.Present].toString()"
    - "[com.google.common.util.concurrent.SequentialExecutor$QueueWorker].toString()"
    - "[com.google.common.base.CharMatcher$And].toString()"
    - "[org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory].toString()"
    - "[com.google.inject.internal.Scoping$4].toString()"
    - "[com.google.common.math.Stats].toString()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].toString()"
    - "[com.google.inject.TypeLiteral].toString()"
    - "[com.google.inject.internal.SingletonScope$1].toString()"
    - "[com.google.common.io.CharSource$ConcatenatedCharSource].toString()"
    - "[com.google.common.io.ByteSource$ConcatenatedByteSource].toString()"
    - "[com.google.common.io.CharSource$CharSequenceCharSource].toString()"
    - "[com.google.common.collect.Cut$AboveValue].toString()"
    - "[com.google.common.hash.Murmur3_128HashFunction].toString()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].toString()"
    - "[com.google.common.graph.AbstractGraph].toString()"
    - "[com.google.common.util.concurrent.ExecutionSequencer$1].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$8].toString()"
    - "[java.lang.Object].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$6].toString()"
    - "[com.google.common.cache.CacheStats].toString()"
    - "[com.google.inject.internal.PrivateElementsImpl].toString()"
    - "[com.google.common.primitives.UnsignedInteger].toString()"
    - "[com.google.common.base.CaseFormat$StringConverter].toString()"
    - "[com.google.common.eventbus.DeadEvent].toString()"
    - "[com.google.common.collect.ImmutableTable].toString()"
    - "[com.google.common.base.Predicates$AndPredicate].toString()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].toString()"
    - "[com.google.common.base.StandardSystemProperty].toString()"
    - "[com.google.common.cache.LongAdder].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$1].toString()"
    - "[com.google.common.util.concurrent.AbstractScheduledService].toString()"
    - "[com.google.common.base.PairwiseEquivalence].toString()"
    - "[com.google.common.base.Functions$PredicateFunction].toString()"
    - "[com.google.common.base.Suppliers$MemoizingSupplier].toString()"
    - "[com.google.common.collect.Count].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[com.google.common.util.concurrent.ServiceManager].toString()"
    - "[com.google.common.util.concurrent.AtomicLongMap].toString()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].toString()"
    - "[com.google.common.collect.Collections2$PermutationCollection].toString()"
    - "[com.google.inject.spi.ElementSource].toString()"
    - "[com.google.common.primitives.UnsignedLong].toString()"
    - "[com.google.common.base.Suppliers$NonSerializableMemoizingSupplier].toString()"
    - "[com.google.common.base.Suppliers$SupplierComposition].toString()"
    - "[com.google.common.util.concurrent.AtomicDoubleArray].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[com.google.common.collect.Sets$PowerSet].toString()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.UntargettedBindingImpl].toString()"
    - "[com.google.common.util.concurrent.ForwardingFluentFuture].toString()"
    - "[com.google.common.hash.Murmur3_32HashFunction].toString()"
    - "[com.google.common.util.concurrent.AbstractService$5].toString()"
    - "[com.google.common.base.Functions$SupplierFunction].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask].toString()"
    - "[com.google.common.collect.ImmutableMultimap].toString()"
    - "[com.google.common.base.CharMatcher].toString()"
    - "[com.google.common.io.MoreFiles$PathByteSink].toString()"
    - "[com.google.common.reflect.TypeToken].toString()"
    - "[com.google.common.collect.TreeMultimap].toString()"
    - "[com.google.common.hash.HashCode].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[com.google.common.collect.AbstractMapEntry].toString()"
    - "[com.google.inject.internal.RealElement].toString()"
    - "[com.google.common.cache.CacheBuilderSpec].toString()"
    - "[com.google.common.collect.ComparatorOrdering].toString()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].toString()"
    - "[com.google.common.io.CharSource$AsByteSource].toString()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].toString()"
    - "[com.google.common.collect.ImmutableRangeMap].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[com.google.common.base.Stopwatch].toString()"
    - "[com.google.common.collect.TreeBasedTable].toString()"
    - "[com.google.inject.internal.BindingBuilder].toString()"
    - "[com.google.common.collect.AbstractTable].toString()"
    - "[com.google.common.collect.NullsLastOrdering].toString()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].toString()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].toString()"
    - "[com.google.common.util.concurrent.InterruptibleTask$Blocker].toString()"
    - "[com.google.common.util.concurrent.AbstractFuture].toString()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].toString()"
    - "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    - "[com.google.common.collect.TreeMultiset$AvlNode].toString()"
    - "[java.lang.Character].toString()"
    - "[com.google.common.collect.Sets$DescendingSet].toString()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].toString()"
    - "[com.google.common.base.Functions$ForMapWithDefault].toString()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].toString()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].toString()"
    - "[com.google.inject.spi.TypeConverterBinding].toString()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[java.lang.Long].toString()"
    - "[com.google.common.reflect.Parameter].toString()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].toString()"
    - "[com.google.common.util.concurrent.MoreExecutors$ListeningDecorator].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[com.google.inject.internal.UniqueAnnotations$1].toString()"
    - "[com.google.common.util.concurrent.AbstractService$3].toString()"
    - "[com.google.common.collect.ArrayListMultimap].toString()"
    - "[com.google.common.util.concurrent.ImmediateFuture].toString()"
    - "[com.google.common.base.Predicates$CompositionPredicate].toString()"
    - "[com.google.common.collect.Iterables$1].toString()"
    - "[com.google.inject.internal.FactoryProxy].toString()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].toString()"
    - "[com.google.inject.internal.InjectorImpl$1].toString()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].toString()"
    - "[com.google.common.reflect.TypeToken$2].toString()"
    - "[com.google.common.io.Files$FileByteSink].toString()"
    - "[com.google.common.io.ByteSink$AsCharSink].toString()"
    - "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    - "[com.google.common.reflect.Invokable].toString()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].toString()"
    - "[com.google.common.base.CharMatcher$IsEither].toString()"
    - "[com.google.common.hash.LongAdder].toString()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].toString()"
    - "[com.google.common.base.CharMatcher$IsNot].toString()"
    - "[com.google.common.util.concurrent.ClosingFuture$Combiner$2].toString()"
    - "[com.google.common.base.Absent:com.google.common.base.CharMatcher$1:com.google.common.base.CharMatcher$BreakingWhitespace:com.google.common.base.CharMatcher$JavaDigit:com.google.common.base.CharMatcher$JavaLetter:com.google.common.base.CharMatcher$JavaLetterOrDigit:com.google.common.base.CharMatcher$JavaLowerCase:com.google.common.base.CharMatcher$JavaUpperCase:com.google.common.base.CharMatcher$NamedFastMatcher:com.google.common.base.CharMatcher$RangesMatcher:com.google.common.base.Converter$IdentityConverter:com.google.common.base.Functions$IdentityFunction:com.google.common.base.Functions$ToStringFunction:com.google.common.base.Predicates$ObjectPredicate$1:com.google.common.base.Predicates$ObjectPredicate$2:com.google.common.base.Predicates$ObjectPredicate$3:com.google.common.base.Predicates$ObjectPredicate$4:com.google.common.base.Suppliers$SupplierFunctionImpl:com.google.common.collect.AllEqualOrdering:com.google.common.collect.Cut$AboveAll:com.google.common.collect.Cut$BelowAll:com.google.common.collect.DiscreteDomain$BigIntegerDomain:com.google.common.collect.DiscreteDomain$IntegerDomain:com.google.common.collect.DiscreteDomain$LongDomain:com.google.common.collect.EmptyContiguousSet:com.google.common.collect.ImmutableEnumSet:com.google.common.collect.Iterables$8:com.google.common.collect.Iterators$8:com.google.common.collect.NaturalOrdering:com.google.common.collect.Ordering$ArbitraryOrdering:com.google.common.collect.ReverseNaturalOrdering:com.google.common.collect.UsingToStringOrdering:com.google.common.hash.ChecksumHashFunction:com.google.common.hash.Crc32cHashFunction:com.google.common.hash.FarmHashFingerprint64:com.google.common.hash.Fingerprint2011:com.google.common.hash.Funnels$ByteArrayFunnel:com.google.common.hash.Funnels$IntegerFunnel:com.google.common.hash.Funnels$LongFunnel:com.google.common.hash.Funnels$UnencodedCharsFunnel:com.google.common.hash.MacHashFunction:com.google.common.hash.MessageDigestHashFunction:com.google.common.io.BaseEncoding$Alphabet:com.google.common.io.ByteSource$EmptyByteSource:com.google.common.io.ByteStreams$1:com.google.common.io.CharSource$EmptyCharSource:com.google.common.io.CharStreams$NullWriter:com.google.common.io.Files$FilePredicate$1:com.google.common.io.Files$FilePredicate$2:com.google.common.math.LinearTransformation$NaNLinearTransformation:com.google.common.net.HostSpecifier:com.google.common.net.InternetDomainName:com.google.common.primitives.Booleans$BooleanComparator:com.google.common.primitives.Booleans$LexicographicalComparator:com.google.common.primitives.Chars$LexicographicalComparator:com.google.common.primitives.Doubles$DoubleConverter:com.google.common.primitives.Doubles$LexicographicalComparator:com.google.common.primitives.Floats$FloatConverter:com.google.common.primitives.Floats$LexicographicalComparator:com.google.common.primitives.Ints$IntConverter:com.google.common.primitives.Ints$LexicographicalComparator:com.google.common.primitives.Longs$LexicographicalComparator:com.google.common.primitives.Longs$LongConverter:com.google.common.primitives.Shorts$LexicographicalComparator:com.google.common.primitives.Shorts$ShortConverter:com.google.common.primitives.SignedBytes$LexicographicalComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$PureJavaComparator:com.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator:com.google.common.primitives.UnsignedInts$LexicographicalComparator:com.google.common.primitives.UnsignedLongs$LexicographicalComparator:com.google.common.reflect.ClassPath$ClassInfo:com.google.common.reflect.ClassPath$ResourceInfo:com.google.common.reflect.TypeParameter:com.google.common.reflect.TypeResolver$TypeVariableKey:com.google.common.reflect.Types$TypeVariableImpl:com.google.common.util.concurrent.AbstractExecutionThreadService$1:com.google.common.util.concurrent.AbstractIdleService$DelegateService:com.google.common.util.concurrent.AbstractScheduledService$ServiceDelegate:com.google.common.util.concurrent.AbstractService$1:com.google.common.util.concurrent.AbstractService$2:com.google.common.util.concurrent.ClosingFuture$2:com.google.common.util.concurrent.ClosingFuture$3:com.google.common.util.concurrent.ClosingFuture$4:com.google.common.util.concurrent.ClosingFuture$7:com.google.common.util.concurrent.ClosingFuture$Combiner2$1:com.google.common.util.concurrent.ClosingFuture$Combiner2$2:com.google.common.util.concurrent.ClosingFuture$Combiner3$1:com.google.common.util.concurrent.ClosingFuture$Combiner3$2:com.google.common.util.concurrent.ClosingFuture$Combiner4$1:com.google.common.util.concurrent.ClosingFuture$Combiner4$2:com.google.common.util.concurrent.ClosingFuture$Combiner5$1:com.google.common.util.concurrent.ClosingFuture$Combiner5$2:com.google.common.util.concurrent.DirectExecutor:com.google.common.util.concurrent.ServiceManager$1:com.google.common.util.concurrent.ServiceManager$2:com.google.inject.Key:com.google.inject.Key$NullAnnotationStrategy:com.google.inject.Scopes$1:com.google.inject.internal.ConstantBindingBuilderImpl:com.google.inject.internal.ExposureBuilder:com.google.inject.internal.InjectorShell$InjectorFactory:com.google.inject.internal.InjectorShell$LoggerFactory:com.google.inject.internal.MembersInjectorImpl:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.Scoping$5:com.google.inject.internal.SingletonScope:com.google.inject.internal.TypeConverterBindingProcessor$1:com.google.inject.internal.TypeConverterBindingProcessor$2:com.google.inject.internal.TypeConverterBindingProcessor$3:com.google.inject.internal.TypeConverterBindingProcessor$4:com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement:com.google.inject.matcher.Matchers$AndMatcher:com.google.inject.matcher.Matchers$AnnotatedWith:com.google.inject.matcher.Matchers$Any:com.google.inject.matcher.Matchers$IdenticalTo:com.google.inject.matcher.Matchers$InSubpackage:com.google.inject.matcher.Matchers$Not:com.google.inject.matcher.Matchers$Only:com.google.inject.matcher.Matchers$OrMatcher:com.google.inject.matcher.Matchers$Returns:com.google.inject.spi.Elements$RecordingBinder:com.google.inject.spi.MembersInjectorLookup$1:com.google.inject.util.Providers$ConstantProvider:com.google.inject.util.Providers$GuicifiedJakartaProvider:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.text.AttributedCharacterIterator$Attribute:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ArrayBlockingQueue:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.PriorityBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.SynchronousQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.lang.model.element.Modifier:javax.security.auth.Subject:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].bootstrap$(com.google.inject.internal.DuplicateElementError)"
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.inject.internal.ErrorFormatter].formatSources(java.util.List,java.util.Formatter)"
    - "[com.google.common.collect.ImmutableMultimap].asMap()"
    - "[com.google.common.collect.ImmutableSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Collection].size()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[java.util.Collection].iterator()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    functionUses: 1
    ICount: 99
    EdgeCount: 1200
    BranchProfiles:
    - Branch String: "com.google.inject.internal.DuplicateElementError:43"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:79"
        BranchSideFuncs:
        - "asMap()"
        - "entrySet()"
      - BranchSide: "com.google.inject.internal.DuplicateElementError:78"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "bootstrap$(com.google.inject.internal.DuplicateElementError)"
        - "bold(java.lang.String)"
        - "formatSources(java.util.List,java.util.Formatter)"
        - "getSources()"
        - "toList()"
        - "stream()"
    - Branch String: "com.google.inject.internal.DuplicateElementError:45"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:77"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.DuplicateElementError:50"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:64"
        BranchSideFuncs:
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "iterator()"
    - Branch String: "com.google.inject.internal.DuplicateElementError:55"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:59"
        BranchSideFuncs:
        - "valueOf(int)"
      - BranchSide: "com.google.inject.internal.DuplicateElementError:58"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.DuplicateElementError:66"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:78"
        BranchSideFuncs:
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.DuplicateElementError:77"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.DuplicateElementError:67"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.DuplicateElementError:70"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.DuplicateElementError:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:41,1"
      Dst: "[com.google.inject.internal.Messages].bold(java.lang.String)"
    - Src: "com.google.inject.internal.DuplicateElementError:41,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.DuplicateElementError:43,1"
      Dst: "[com.google.common.collect.ImmutableMultimap].asMap()"
    - Src: "com.google.inject.internal.DuplicateElementError:43,1"
      Dst: "[com.google.common.collect.ImmutableMap].entrySet()"
    - Src: "com.google.inject.internal.DuplicateElementError:43,1"
      Dst: "[com.google.common.collect.ImmutableSet].iterator()"
    - Src: "com.google.inject.internal.DuplicateElementError:43,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.DuplicateElementError:43,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.DuplicateElementError:44,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.DuplicateElementError:45,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.DuplicateElementError:45,1"
      Dst: "[java.util.Collection].size()"
    - Src: "com.google.inject.internal.DuplicateElementError:47,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.DuplicateElementError:47,1"
      Dst: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_0__141].bootstrap$()"
    - Src: "com.google.inject.internal.DuplicateElementError:48,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.DuplicateElementError:49,1"
      Dst: "[java.util.stream.Collectors].toSet()"
    - Src: "com.google.inject.internal.DuplicateElementError:49,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.DuplicateElementError:50,1"
      Dst: "[java.util.Set].size()"
    - Src: "com.google.inject.internal.DuplicateElementError:52,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.DuplicateElementError:52,1"
      Dst: "[com.google.inject.internal.Messages].redBold(java.lang.String)"
    - Src: "com.google.inject.internal.DuplicateElementError:55,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.DuplicateElementError:57,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].formatElement(com.google.inject.internal.DuplicateElementError$Element,java.util.Formatter)"
    - Src: "com.google.inject.internal.DuplicateElementError:72,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "com.google.inject.internal.DuplicateElementError:83,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    - Src: "com.google.inject.internal.DuplicateElementError:83,1"
      Dst: "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].bootstrap$(com.google.inject.internal.DuplicateElementError)"
    - Src: "com.google.inject.internal.DuplicateElementError:84,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.DuplicateElementError:91,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.DuplicateElementError:92,1"
      Dst: "[com.google.inject.internal.ErrorFormatter].formatSources(java.util.List,java.util.Formatter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.DuplicateElementError].formatElement(com.google.inject.internal.DuplicateElementError$Element,java.util.Formatter)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.DuplicateElementError$Element"
    - "java.util.Formatter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - "[com.google.inject.internal.SourceFormatter].format()"
    - "[com.google.inject.spi.Element].getSource()"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:96,1"
      Dst: "[com.google.inject.spi.Element].getSource()"
    - Src: "com.google.inject.internal.DuplicateElementError:97,1"
      Dst: "[com.google.inject.internal.SourceFormatter].<init>(java.lang.Object,java.util.Formatter,boolean)"
    - Src: "com.google.inject.internal.DuplicateElementError:102,1"
      Dst: "[com.google.inject.internal.SourceFormatter].format()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DuplicateElementError].withSources(java.util.List<Object>)"
    functionSourceFile: "com.google.inject.internal.DuplicateElementError"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 7
    returnType: "com.google.inject.internal.DuplicateElementError<T>"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,com.google.common.collect.ImmutableMultimap,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DuplicateElementError:107,1"
      Dst: "[com.google.inject.internal.DuplicateElementError].<init>(com.google.inject.Key,com.google.common.collect.ImmutableMultimap,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].lambda$tryInitialize$0(java.lang.Object)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder$BindingSelection$lambda_tryInitialize_0__192:-1,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].lambda$tryInitialize$0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 548
    functionLinenumberEnd: 582
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].providerOf(com.google.inject.Key)"
    - "[com.google.common.collect.ImmutableSet].of()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkBindingIsNotRecursive(com.google.inject.internal.Errors)"
    functionUses: 1
    ICount: 48
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:549"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:552"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:551"
        BranchSideFuncs:
        - "getExistingBinding(com.google.inject.Key)"
        - "getKeyForDefaultBinding()"
        - "getKeyForActualBinding()"
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:556"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:561"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:562"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:564"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:563"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:564"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:570"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:571"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:576"
        BranchSideFuncs:
        - "get(com.google.inject.Key)"
        - "providerOf(com.google.inject.Key)"
        - "of(java.lang.Object)"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:575"
        BranchSideFuncs:
        - "of()"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:552,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForActualBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:552,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:553,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getKeyForDefaultBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:572,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:572,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:572,1"
      Dst: "[com.google.common.collect.ImmutableSet].of(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:574,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder].providerOf(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:576,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:579,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkBindingIsNotRecursive(com.google.inject.internal.Errors)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].checkBindingIsNotRecursive(com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$BindingSelection"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 592
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - "[com.google.inject.internal.Errors].recursiveBinding(com.google.inject.Key,com.google.inject.Key)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:584"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:591"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:590"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealOptionalBinder$BindingSelection:586"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$BindingSelection:590"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:586,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:586,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.RealOptionalBinder$BindingSelection:588,1"
      Dst: "[com.google.inject.internal.Errors].recursiveBinding(com.google.inject.Key,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].<init>(java.lang.Object,java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.StaticInjectionRequest:42,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].getType()"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].requestStaticInjection(java.lang.Class[])"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].requestStaticInjection(java.lang.Class[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:73,1"
      Dst: "[com.google.inject.spi.StaticInjectionRequest].getSource()"
    - Src: "com.google.inject.spi.StaticInjectionRequest:73,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.StaticInjectionRequest:73,1"
      Dst: "[com.google.inject.Binder].requestStaticInjection(java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectionRequestProcessor].visit(com.google.inject.spi.StaticInjectionRequest)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.StaticInjectionRequest)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.StaticInjectionRequest)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:78,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.StaticInjectionRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[com.google.common.base.Absent:com.google.common.base.Predicates$InstanceOfPredicate:com.google.common.base.Predicates$SubtypeOfPredicate:com.google.common.cache.CacheStats:com.google.common.collect.Count:com.google.common.collect.ImmutableEnumSet:com.google.common.hash.Murmur3_128HashFunction:com.google.common.hash.Murmur3_32HashFunction:com.google.common.hash.SipHashFunction:com.google.common.primitives.UnsignedInteger:com.google.common.primitives.UnsignedLong:com.google.common.reflect.TypeParameter:com.google.inject.matcher.Matchers$IdenticalTo:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.AclEntry:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CopyOnWriteArraySet:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.security.auth.Subject:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 56
    ICount: 18
    EdgeCount: 238
    BranchProfiles:
    - Branch String: "com.google.inject.spi.StaticInjectionRequest:83"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.StaticInjectionRequest:-1"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.StaticInjectionRequest:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.StaticInjectionRequest:84"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.StaticInjectionRequest:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.StaticInjectionRequest:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.spi.StaticInjectionRequest:85"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.StaticInjectionRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:84,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.StaticInjectionRequest].hashCode()"
    functionSourceFile: "com.google.inject.spi.StaticInjectionRequest"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.StaticInjectionRequest:90,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    functionUses: 56
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:125"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:124"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:125"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:124"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:125,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].hashCode()"
    functionSourceFile: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding:130,1"
      Dst: "[com.google.inject.Key].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$1(java.lang.reflect.Method)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.DeclaredMembers$lambda_getDeclaredMethods_1__76:-1,1"
      Dst: "[com.google.inject.internal.DeclaredMembers].lambda$getDeclaredMethods$1(java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1].<init>(com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory,com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory"
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1:117,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1].call()"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealMultimapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealMultibinder$RealMultibinderProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealOptionalBinder$RealDirectTypeProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.ProviderMethod].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalKeyProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealOptionalBinder$JavaOptionalProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider:com.google.inject.internal.RealMapBinder$ProviderMapEntry:com.google.inject.internal.RealMapBinder$RealProviderMapProvider:com.google.inject.internal.RealMultibinder$RealMultibinderCollectionOfProvidersProvider:com.google.inject.internal.RealOptionalBinder$JavaOptionalProviderProvider:com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    - "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionUses: 1
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory$1:120,1"
      Dst: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$Factory].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].<init>()"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Messages].mergeSources(java.util.List<Object>,com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "com.google.inject.spi.Message"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Message].getSources()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Shorts$ShortArrayAsList:java.util.AbstractCollection:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.base.Joiner$3:com.google.common.collect.CartesianList:com.google.common.collect.ImmutableList$SubList:com.google.common.collect.ImmutableRangeMap$1:com.google.common.collect.ImmutableRangeSet$1:com.google.common.collect.ImmutableRangeSet$ComplementRanges:com.google.common.collect.RegularImmutableList:com.google.common.collect.SingletonImmutableList:com.google.common.primitives.Booleans$BooleanArrayAsList:com.google.common.primitives.Bytes$ByteArrayAsList:com.google.common.primitives.Chars$CharArrayAsList:com.google.common.primitives.Doubles$DoubleArrayAsList:com.google.common.primitives.Floats$FloatArrayAsList:com.google.common.primitives.Ints$IntArrayAsList:com.google.common.primitives.Longs$LongArrayAsList:com.google.common.primitives.Shorts$ShortArrayAsList:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].subList(int,int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].subList(int,int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].subList(int,int)"
    - "[com.google.common.collect.ForwardingList].subList(int,int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].subList(int,int)"
    - "[com.google.common.collect.SingletonImmutableList].subList(int,int)"
    - "[com.google.common.collect.Lists$ReverseList].subList(int,int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList].subList(int,int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].subList(int,int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList$SubList].subList(int,int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].subList(int,int)"
    - "[com.google.inject.spi.Message].withSource(java.util.List)"
    - "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableList$Builder].build()"
    - "[com.google.common.collect.ImmutableList].builder()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].subList(int,int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:50"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:null"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "com.google.inject.internal.Messages:51"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:null"
        BranchSideFuncs:
        - "get(int)"
        - "equal(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.Messages:52"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:null"
        BranchSideFuncs:
        - "subList(int,int)"
        - "size()"
    Callsites:
    - Src: "com.google.inject.internal.Messages:44,1"
      Dst: "[com.google.inject.spi.Message].getSources()"
    - Src: "com.google.inject.internal.Messages:50,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.Messages:52,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.Messages:52,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.Messages:52,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:53,1"
      Dst: "[java.util.List].subList(int,int)"
    - Src: "com.google.inject.internal.Messages:56,1"
      Dst: "[com.google.common.collect.ImmutableList].builder()"
    - Src: "com.google.inject.internal.Messages:56,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.Messages:56,1"
      Dst: "[com.google.common.collect.ImmutableList$Builder].build()"
    - Src: "com.google.inject.internal.Messages:55,1"
      Dst: "[com.google.inject.spi.Message].withSource(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection<Message>)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 116
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Collection<Message>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Formatter].<init>()"
    - "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - "[com.google.inject.internal.Messages$getErrorDetail__62].bootstrap$()"
    - "[com.google.common.collect.Sets$UnmodifiableNavigableSet].stream()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].stream()"
    - "[com.google.common.collect.Sets$2].stream()"
    - "[com.google.common.collect.Sets$3].stream()"
    - "[com.google.common.collect.Sets$1].stream()"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Collectors].toList()"
    - "[com.google.common.collect.Maps].newHashMap()"
    - "[com.google.common.collect.ImmutableAsList].isEmpty()"
    - "[com.google.common.collect.Lists$Partition].isEmpty()"
    - "[com.google.common.collect.ForwardingCollection].isEmpty()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].isEmpty()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].isEmpty()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].isEmpty()"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].size()"
    - "[com.google.common.collect.LinkedListMultimap$1ValuesImpl].size()"
    - "[com.google.common.collect.LinkedListMultimap$1].size()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].size()"
    - "[com.google.common.base.Throwables$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$Partition].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.Lists$ReverseList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].size()"
    - "[com.google.common.collect.ForwardingCollection].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.Lists$CharSequenceAsList].size()"
    - "[com.google.common.collect.Lists$TransformingSequentialList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].size()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].size()"
    - "[com.google.common.collect.LinkedListMultimap$1EntriesImpl].size()"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].size()"
    - "[com.google.common.collect.Lists$OnePlusArrayList].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.Lists$AbstractListWrapper].size()"
    - "[com.google.common.collect.ImmutableList$SubList].size()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].subList(int,int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].subList(int,int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].subList(int,int)"
    - "[com.google.common.collect.ForwardingList].subList(int,int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].subList(int,int)"
    - "[com.google.common.collect.SingletonImmutableList].subList(int,int)"
    - "[com.google.common.collect.Lists$ReverseList].subList(int,int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList].subList(int,int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].subList(int,int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].subList(int,int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].subList(int,int)"
    - "[com.google.common.collect.ImmutableList$SubList].subList(int,int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].subList(int,int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].subList(int,int)"
    - "[com.google.inject.internal.Messages$isMergeable__63].bootstrap$(com.google.inject.spi.ErrorDetail)"
    - "[java.util.stream.Collectors].partitioningBy(java.util.function.Predicate)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[com.google.inject.spi.ErrorDetail].format(int,java.util.List,java.util.Formatter)"
    - "[com.google.inject.spi.ErrorDetail].getCause()"
    - "[com.google.common.base.Equivalence].wrap(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[com.google.common.base.Throwables].getStackTraceAsString(java.lang.Throwable)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[com.google.inject.internal.PackageNameCompressor].compressPackagesInMessage(java.lang.String)"
    - "[java.util.Formatter].toString()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].subList(int,int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 81
    EdgeCount: 206
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:74"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:72"
        BranchSideFuncs:
        - "bootstrap$()"
        - "toList()"
        - "getOnlyCause(java.util.Collection)"
        - "newHashMap()"
      - BranchSide: "com.google.inject.internal.Messages:71"
        BranchSideFuncs:
        - "<init>()"
        - "getOnlyCause(java.util.Collection)"
    - Branch String: "com.google.inject.internal.Messages:80"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:109"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "subList(int,int)"
        - "requireNonNull(java.lang.Object)"
        - "get(int)"
        - "format(int,java.util.List,java.util.Formatter)"
        - "partitioningBy(java.util.function.Predicate)"
        - "getCause()"
        - "bootstrap$(com.google.inject.spi.ErrorDetail)"
        - "stream()"
        - "size()"
      - BranchSide: "com.google.inject.internal.Messages:108"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:105"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "wrap(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Messages:104"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:105"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "wrap(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Messages:104"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages:95"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:99"
        BranchSideFuncs:
        - "getStackTraceAsString(java.lang.Throwable)"
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.Messages:98"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "intValue()"
    - Branch String: "com.google.inject.internal.Messages:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:112"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:111"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
    Callsites:
    - Src: "com.google.inject.internal.Messages:72,1"
      Dst: "[java.util.Formatter].<init>()"
    - Src: "com.google.inject.internal.Messages:72,1"
      Dst: "[java.util.Formatter].format(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.Messages:74,1"
      Dst: "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection)"
    - Src: "com.google.inject.internal.Messages:77,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "com.google.inject.internal.Messages:77,1"
      Dst: "[com.google.inject.internal.Messages$getErrorDetail__62].bootstrap$()"
    - Src: "com.google.inject.internal.Messages:77,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "com.google.inject.internal.Messages:77,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "com.google.inject.internal.Messages:77,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "com.google.inject.internal.Messages:79,1"
      Dst: "[com.google.common.collect.Maps].newHashMap()"
    - Src: "com.google.inject.internal.Messages:80,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "com.google.inject.internal.Messages:81,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.Messages:85,1"
      Dst: "[java.util.List].size()"
    - Src: "com.google.inject.internal.Messages:85,1"
      Dst: "[java.util.List].subList(int,int)"
    - Src: "com.google.inject.internal.Messages:86,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:86,1"
      Dst: "[com.google.inject.internal.Messages$isMergeable__63].bootstrap$(com.google.inject.spi.ErrorDetail)"
    - Src: "com.google.inject.internal.Messages:86,1"
      Dst: "[java.util.stream.Collectors].partitioningBy(java.util.function.Predicate)"
    - Src: "com.google.inject.internal.Messages:88,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.Messages:88,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:90,1"
      Dst: "[com.google.inject.spi.ErrorDetail].format(int,java.util.List,java.util.Formatter)"
    - Src: "com.google.inject.internal.Messages:92,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getCause()"
    - Src: "com.google.inject.internal.Messages:94,1"
      Dst: "[com.google.common.base.Equivalence].wrap(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:95,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:96,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.Messages:96,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.Messages:97,1"
      Dst: "[com.google.common.base.Throwables].getStackTraceAsString(java.lang.Throwable)"
    - Src: "com.google.inject.internal.Messages:99,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "com.google.inject.internal.Messages:102,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.internal.Messages:102,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.Messages:115,1"
      Dst: "[java.util.Formatter].toString()"
    - Src: "com.google.inject.internal.Messages:115,1"
      Dst: "[com.google.inject.internal.PackageNameCompressor].compressPackagesInMessage(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.Messages].getOnlyCause(java.util.Collection<Message>)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 256
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "java.util.Collection<Message>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.spi.Message].getCause()"
    - "[com.google.common.base.Equivalence].equivalent(java.lang.Object,java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 18
    EdgeCount: 276
    BranchProfiles:
    - Branch String: "com.google.inject.internal.Messages:242"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:255"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getCause()"
        - "next()"
      - BranchSide: "com.google.inject.internal.Messages:254"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages:244"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:248"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:247"
        BranchSideFuncs:
        - "equivalent(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.Messages:248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:252"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:251"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.Messages:248"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.Messages:252"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.Messages:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:242,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.Messages:242,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.Messages:242,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.Messages:243,1"
      Dst: "[com.google.inject.spi.Message].getCause()"
    - Src: "com.google.inject.internal.Messages:248,1"
      Dst: "[com.google.common.base.Equivalence].equivalent(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.Messages].underline(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.Messages"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Messages:310,1"
      Dst: "[com.google.inject.internal.Messages].formatText(java.lang.String,com.google.inject.internal.Messages$FormatOptions[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].createChild(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "com.google.inject.spi.ModuleSource"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].<init>(com.google.inject.spi.ModuleSource,java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleSource:90,1"
      Dst: "[com.google.inject.spi.ModuleSource].<init>(com.google.inject.spi.ModuleSource,java.lang.Class,com.google.inject.spi.BindingSourceRestriction$PermitMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.ModuleSource].size()"
    functionSourceFile: "com.google.inject.spi.ModuleSource"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ModuleSource].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.spi.ModuleSource:119"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.ModuleSource:122"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.ModuleSource:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.ModuleSource:122,1"
      Dst: "[com.google.inject.spi.ModuleSource].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements].forType(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.cache.AbstractLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.ForwardingLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LoadingSerializationProxy].getUnchecked(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$LocalLoadingCache].getUnchecked(java.lang.Object)"
    - "[com.google.inject.internal.util.LineNumbers].getFirstLine()"
    - "[com.google.inject.internal.util.LineNumbers].getSource()"
    - "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[java.lang.Class].getName()"
    - "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:77,1"
      Dst: "[com.google.common.cache.LoadingCache].getUnchecked(java.lang.Object)"
    - Src: "com.google.inject.internal.util.StackTraceElements:78,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].getFirstLine()"
    - Src: "com.google.inject.internal.util.StackTraceElements:79,1"
      Dst: "[com.google.inject.internal.util.LineNumbers].getSource()"
    - Src: "com.google.inject.internal.util.StackTraceElements:80,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:80,1"
      Dst: "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements].convertToInMemoryStackTraceElement(java.lang.StackTraceElement[])"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement[]"
    argCount: 1
    argTypes:
    - "java.lang.StackTraceElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.StackTraceElement)"
    - "[com.google.inject.internal.util.StackTraceElements].weakIntern(com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements:92"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:95"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:94"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements:97"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:98,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.StackTraceElement)"
    - Src: "com.google.inject.internal.util.StackTraceElements:99,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].weakIntern(com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.StackTraceElements].weakIntern(com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getClassName()"
    - "[com.google.inject.internal.util.StackTraceElements].weakIntern(java.lang.String)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getMethodName()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getLineNumber()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.String,java.lang.String,int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements:127"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:130"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:126,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.util.StackTraceElements:132,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getClassName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:132,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements].weakIntern(java.lang.String)"
    - Src: "com.google.inject.internal.util.StackTraceElements:133,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getMethodName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:134,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getLineNumber()"
    - Src: "com.google.inject.internal.util.StackTraceElements:134,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].<init>(java.lang.String,java.lang.String,int)"
    - Src: "com.google.inject.internal.util.StackTraceElements:135,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements].weakIntern(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements:141"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:144"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:140,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.util.StackTraceElements:144,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.StackTraceElements].convertToStackTraceElement(com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement[])"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.StackTraceElement[]"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getClassName()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getMethodName()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getLineNumber()"
    - "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.StackTraceElements:109"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:112"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:111"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.StackTraceElements:114"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.StackTraceElements:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:115,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getClassName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:116,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getMethodName()"
    - Src: "com.google.inject.internal.util.StackTraceElements:117,1"
      Dst: "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].getLineNumber()"
    - Src: "com.google.inject.internal.util.StackTraceElements:118,1"
      Dst: "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.util.StackTraceElements].<init>()"
    functionSourceFile: "com.google.inject.internal.util.StackTraceElements"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.StackTraceElements:203,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.MethodPartition].collectEnhanceableMethods(com.google.inject.TypeLiteral<?>,java.util.function.Consumer<Method>,java.util.Map<Method,Method>)"
    functionSourceFile: "com.google.inject.internal.aop.MethodPartition"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 163
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.TypeLiteral<?>"
    - "java.util.function.Consumer<Method>"
    - "java.util.Map<Method,Method>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.MethodPartition].parametersKey(java.lang.Class[])"
    - "[java.util.HashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].isBridge()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.HashMap:java.util.Map].entrySet()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getValue()"
    - "[com.google.common.collect.CompactHashMap$MapEntry].getValue()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries$1$1].getValue()"
    - "[com.google.common.collect.Maps$7].getValue()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getValue()"
    - "[com.google.common.collect.ForwardingMapEntry].getValue()"
    - "[com.google.common.collect.Maps$12].getValue()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getValue()"
    - "[com.google.common.collect.HashBiMap$1$MapEntry].getValue()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1$1].getKey()"
    - "[com.google.common.collect.ForwardingMapEntry].getKey()"
    - "[com.google.common.collect.Maps$12].getKey()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].getKey()"
    - "[com.google.common.collect.Maps$7].getKey()"
    - "[com.google.common.collect.ArrayTable$ArrayMap$1].getKey()"
    - "[com.google.common.collect.StandardTable$Column$EntrySetIterator$1EntryImpl].getKey()"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$add__57].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEachEntry_0__66].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_forEach_0__48].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$clear__2].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$2$1].accept(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].accept(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView$lambda_forEach_1__84].accept(java.lang.Object)"
    - "[com.google.common.collect.Iterables$5$lambda_forEach_0__89].accept(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap$lambda_forEach_0__83].accept(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$Keys$lambda_forEach_0__42].accept(java.lang.Object)"
    - "[com.google.common.collect.Multiset$lambda_forEach_1__47].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_1__36].accept(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_forEach_0__46].accept(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes$lambda_toString_1__14].accept(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$3$1].accept(java.lang.Object)"
    - "[com.google.inject.internal.aop.ClassBuilding$lambda_buildEnhancerBuilder_0__35].accept(java.lang.Object)"
    - "[com.google.common.collect.Iterables$4$lambda_forEach_0__90].accept(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView$lambda_forEach_0__88].accept(java.lang.Object)"
    - "[java.util.HashMap].entrySet()"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry:com.google.common.collect.CompactHashMap$MapEntry:com.google.common.collect.HashBiMap$1$MapEntry:com.google.common.collect.HashBiMap$Inverse$1$InverseEntry:com.google.common.collect.ImmutableEntry:com.google.common.collect.LinkedListMultimap$Node:com.google.common.collect.MapMakerInternalMap$WriteThroughEntry:com.google.common.collect.TreeRangeMap$RangeMapEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.LinkedHashMap:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[java.lang.Class].isInterface()"
    - "[com.google.inject.internal.aop.MethodPartition].resolvedParametersMatch(java.lang.reflect.Method,com.google.inject.TypeLiteral,java.lang.reflect.Method)"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Streams$1Splitr].accept(java.lang.Object)"
    - "[com.google.common.collect.CollectSpliterators$1Splitr].accept(java.lang.Object)"
    - "[java.util.stream.Collectors$1OptionalBox].accept(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 108
    EdgeCount: 782
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.MethodPartition:74"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:104"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "parametersKey(java.lang.Class[])"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:103"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:77"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:82"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:81"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:78"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:82"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:84"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:95"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:94"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:85"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:89"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:91"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:95"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:99"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:104"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:118"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:117"
        BranchSideFuncs:
        - "entrySet()"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:106"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:108"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:107"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:108"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:111"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:110"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:118"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:162"
        BranchSideFuncs:
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "get(java.lang.Object)"
        - "iterator()"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:161"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:126"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:158"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "isBridge()"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:157"
        BranchSideFuncs:
        - "getModifiers()"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:127"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:154"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:129"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:129"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:128"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:130"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:143"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:136"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:158"
        BranchSideFuncs:
        - "isInterface()"
        - "getDeclaringClass()"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:157"
        BranchSideFuncs:
        - "getModifiers()"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:158"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:157"
        BranchSideFuncs:
        - "getModifiers()"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:144"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:150"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:144"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:154"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:147"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:154"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:158"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:161"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.MethodPartition:68,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "com.google.inject.internal.aop.MethodPartition:74,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.aop.MethodPartition:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.aop.MethodPartition:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.aop.MethodPartition:75,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.MethodPartition:75,1"
      Dst: "[com.google.inject.internal.aop.MethodPartition].parametersKey(java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.MethodPartition:76,1"
      Dst: "[java.util.Map].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.MethodPartition:78,1"
      Dst: "[java.lang.reflect.Method].isBridge()"
    - Src: "com.google.inject.internal.aop.MethodPartition:80,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.MethodPartition:84,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "com.google.inject.internal.aop.MethodPartition:88,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.MethodPartition:90,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.aop.MethodPartition:91,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.MethodPartition:104,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "com.google.inject.internal.aop.MethodPartition:104,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.aop.MethodPartition:105,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "com.google.inject.internal.aop.MethodPartition:106,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.MethodPartition:107,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "com.google.inject.internal.aop.MethodPartition:109,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.MethodPartition:119,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.MethodPartition:137,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "com.google.inject.internal.aop.MethodPartition:144,1"
      Dst: "[com.google.inject.internal.aop.MethodPartition].resolvedParametersMatch(java.lang.reflect.Method,com.google.inject.TypeLiteral,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 42
    CyclomaticComplexity: 23
  - functionName: "[com.google.inject.internal.aop.MethodPartition].parametersKey(java.lang.Class[])"
    functionSourceFile: "com.google.inject.internal.aop.MethodPartition"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.MethodPartition:167"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:173"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:172"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "com.google.inject.internal.aop.MethodPartition:168"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:null"
        BranchSideFuncs:
        - "append(char)"
    Callsites:
    - Src: "com.google.inject.internal.aop.MethodPartition:166,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.internal.aop.MethodPartition:169,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.internal.aop.MethodPartition:171,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.aop.MethodPartition:171,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.inject.internal.aop.MethodPartition:173,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.MethodPartition].resolvedParametersMatch(java.lang.reflect.Method,com.google.inject.TypeLiteral<?>,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.MethodPartition"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Method"
    - "com.google.inject.TypeLiteral<?>"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - "[com.google.common.collect.ImmutableRangeSet$1].get(int)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].get(int)"
    - "[com.google.common.collect.Lists$TwoPlusArrayList].get(int)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableList$SubList].get(int)"
    - "[com.google.common.collect.CartesianList$1].get(int)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].get(int)"
    - "[com.google.common.collect.ImmutableSet$Indexed$1].get(int)"
    - "[com.google.common.collect.IndexedImmutableSet$1].get(int)"
    - "[com.google.common.collect.Lists$StringAsImmutableList].get(int)"
    - "[com.google.common.base.Joiner$3].get(int)"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].get(int)"
    - "[com.google.common.collect.Lists$Partition].get(int)"
    - "[com.google.common.collect.Lists$AbstractListWrapper].get(int)"
    - "[com.google.common.collect.ImmutableRangeMap$1].get(int)"
    - "[com.google.common.collect.Lists$OnePlusArrayList].get(int)"
    - "[com.google.common.collect.RegularImmutableList].get(int)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1].get(int)"
    - "[com.google.common.collect.RegularContiguousSet$3].get(int)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].get(int)"
    - "[com.google.common.collect.RegularImmutableMap$Values].get(int)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedList].get(int)"
    - "[com.google.common.collect.Sets$CartesianSet$1].get(int)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].get(int)"
    - "[com.google.common.collect.ForwardingList].get(int)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].get(int)"
    - "[com.google.common.collect.ImmutableRangeSet$ComplementRanges].get(int)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].get(int)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].get(int)"
    - "[com.google.common.collect.ImmutableMapValues$2].get(int)"
    - "[com.google.common.collect.Lists$ReverseList].get(int)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].get(int)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableAsList].get(int)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].get(int)"
    - "[com.google.common.collect.SingletonImmutableList].get(int)"
    - "[com.google.common.collect.Lists$CharSequenceAsList].get(int)"
    - "[com.google.common.collect.RegularImmutableTable$Values].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet$1].get(int)"
    - "[com.google.common.base.Throwables$1].get(int)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[com.google.common.collect.CartesianList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.MethodPartition:181"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:186"
        BranchSideFuncs:
        - "get(int)"
        - "getRawType()"
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:185"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.aop.MethodPartition:182"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:179"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.MethodPartition:178"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "getParameterTypes(java.lang.reflect.Member)"
    Callsites:
    - Src: "com.google.inject.internal.aop.MethodPartition:179,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.MethodPartition:180,1"
      Dst: "[com.google.inject.TypeLiteral].getParameterTypes(java.lang.reflect.Member)"
    - Src: "com.google.inject.internal.aop.MethodPartition:182,1"
      Dst: "[java.util.List].get(int)"
    - Src: "com.google.inject.internal.aop.MethodPartition:182,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$2].convert(java.lang.String,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$2"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$2:79,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$2:79,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$2].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$2"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Only].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Only"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    functionUses: 12
    ICount: 5
    EdgeCount: 387
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Only:232,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$Only"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].equals(java.lang.Object)"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsLastOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.LexicographicalOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionComposition].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InPredicate].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultiset].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.CompoundOrdering].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$SupplierFunction].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$LocationInfo].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[com.google.common.collect.GeneralRange].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.ReverseOrdering].equals(java.lang.Object)"
    - "[com.google.common.collect.Multisets$AbstractEntry].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].equals(java.lang.Object)"
    - "[com.google.common.hash.SipHashFunction].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeMap].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[com.google.common.net.MediaType].equals(java.lang.Object)"
    - "[com.google.common.base.PairwiseEquivalence].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractNetwork].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Enums$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierComposition].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultimap].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InSubpackage].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.OptionalBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[com.google.inject.name.NamedImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayListMultimap].equals(java.lang.Object)"
    - "[com.google.common.eventbus.Subscriber].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheStats].equals(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$CompositionPredicate].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractValueGraph].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].equals(java.lang.Object)"
    - "[com.google.common.base.Absent].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedLong].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ReverseConverter].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ConstantFunction].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[com.google.common.math.PairedStats].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.NullsFirstOrdering].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableRangeSet].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$Alphabet].equals(java.lang.Object)"
    - "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$Wrapper].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet].equals(java.lang.Object)"
    - "[com.google.common.cache.CacheBuilderSpec].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$OrPredicate].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Ordered].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[com.google.common.collect.HashBasedTable].equals(java.lang.Object)"
    - "[com.google.common.base.CaseFormat$StringConverter].equals(java.lang.Object)"
    - "[com.google.common.hash.HashCode].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$NotPredicate].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableTable].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$PowerSet].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.Indexer$IndexedBinding].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractRangeSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$BiMapConverter].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractListMultimap].equals(java.lang.Object)"
    - "[com.google.inject.spi.Message].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].equals(java.lang.Object)"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.AbstractInvocationHandler].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[com.google.common.math.Stats].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[com.google.common.collect.Interners$InternerFunction].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].equals(java.lang.Object)"
    - "[com.google.common.primitives.Longs$LongArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].equals(java.lang.Object)"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingSet].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].equals(java.lang.Object)"
    - "[com.google.common.base.Present].equals(java.lang.Object)"
    - "[com.google.common.net.HostAndPort].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultiset].equals(java.lang.Object)"
    - "[com.google.common.graph.AbstractGraph].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$ConverterComposition].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeMultimap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_128HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMapEntry].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableDoubleArray].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumSet].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InstanceBindingImpl].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[com.google.common.collect.ByFunctionOrdering].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethod].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    - "[com.google.inject.Key$AnnotationTypeStrategy].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedListMultimap].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].equals(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$Signature].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[com.google.common.net.InternetDomainName].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMultiset].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].equals(java.lang.Object)"
    - "[com.google.common.primitives.Ints$IntArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[com.google.common.base.Converter].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeParameter].equals(java.lang.Object)"
    - "[com.google.common.base.Predicates$AndPredicate].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AndMatcher].equals(java.lang.Object)"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingTable].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[com.google.inject.spi.StaticInjectionRequest].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedList].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[com.google.common.collect.LinkedHashMultimap].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[com.google.common.primitives.UnsignedInteger].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$PredicateFunction].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[com.google.inject.TypeLiteral].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractTable].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[com.google.common.base.Functions$ForMapWithDefault].equals(java.lang.Object)"
    - "[com.google.common.net.HostSpecifier].equals(java.lang.Object)"
    - "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].equals(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].equals(java.lang.Object)"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$OrMatcher].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[com.google.common.graph.EndpointPair$Unordered].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.ExplicitOrdering].equals(java.lang.Object)"
    - "[com.google.common.reflect.TypeToken].equals(java.lang.Object)"
    - "[com.google.common.collect.EmptyContiguousSet].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[com.google.inject.spi.Dependency].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[com.google.common.collect.Count].equals(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row$2].equals(java.lang.Object)"
    - "[com.google.inject.multibindings.Multibinder].equals(java.lang.Object)"
    - "[com.google.common.graph.ElementOrder].equals(java.lang.Object)"
    - "[com.google.common.primitives.Chars$CharArrayAsList].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet].equals(java.lang.Object)"
    - "[com.google.inject.spi.ErrorDetail].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$SequentialFunnel].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Not].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableIntArray].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingList].equals(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$TypeVariableImpl].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].equals(java.lang.Object)"
    - "[com.google.inject.internal.UntargettedBindingImpl].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[com.google.common.collect.Cut].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableSortedSet].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMultimap].equals(java.lang.Object)"
    - "[com.google.common.collect.Range].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$CartesianSet].equals(java.lang.Object)"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].equals(java.lang.Object)"
    - "[com.google.common.collect.Sets$FilteredSet].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[com.google.common.base.Converter$FunctionBasedConverter].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Only].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$Returns].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].equals(java.lang.Object)"
    - "[com.google.inject.internal.UniqueAnnotations$1].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].equals(java.lang.Object)"
    - "[com.google.common.collect.AbstractSetMultimap].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.collect.Tables$AbstractCell].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[com.google.common.collect.HashMultimap].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[com.google.common.hash.Murmur3_32HashFunction].equals(java.lang.Object)"
    - "[com.google.common.collect.ComparatorOrdering].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    - "[java.nio.file.attribute.AclEntry].equals(java.lang.Object)"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].equals(java.lang.Object)"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[com.google.inject.internal.RealElement].equals(java.lang.Object)"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].equals(java.lang.Object)"
    - "[com.google.common.collect.RegularContiguousSet].equals(java.lang.Object)"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].equals(java.lang.Object)"
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.util.EnumMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].equals(java.lang.Object)"
    - "[com.google.common.base.FunctionalEquivalence].equals(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].equals(java.lang.Object)"
    - "[com.google.common.hash.BloomFilter].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 387
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$Only:237"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Only:236"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$Only:237"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$Only:236"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Only:237,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$Only].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Only"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].hashCode()"
    - "[com.google.common.hash.Hashing$ConcatenatedHashFunction].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[com.google.inject.matcher.Matchers$SubclassesOf].hashCode()"
    - "[com.google.inject.internal.UniqueAnnotations$1].hashCode()"
    - "[com.google.common.collect.Cut$BelowAll].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap].hashCode()"
    - "[com.google.common.hash.SipHashFunction].hashCode()"
    - "[java.util.Hashtable$Entry].hashCode()"
    - "[java.time.ZoneOffset].hashCode()"
    - "[java.lang.Runtime$Version].hashCode()"
    - "[com.google.common.collect.ImmutableMap].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.collect.RegularImmutableSet].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Exports].hashCode()"
    - "[com.google.common.collect.ImmutableMultiset$EntrySet].hashCode()"
    - "[com.google.common.base.Functions$SupplierFunction].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$ProviderMapEntry].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[com.google.common.base.Functions$ForMapWithDefault].hashCode()"
    - "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    - "[com.google.common.hash.BloomFilter].hashCode()"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].hashCode()"
    - "[com.google.common.collect.SingletonImmutableSet].hashCode()"
    - "[com.google.common.collect.TreeBasedTable].hashCode()"
    - "[com.google.common.collect.LexicographicalOrdering].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Recipe].hashCode()"
    - "[java.net.InterfaceAddress].hashCode()"
    - "[com.google.common.base.Predicates$CompositionPredicate].hashCode()"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].hashCode()"
    - "[java.text.MessageFormat].hashCode()"
    - "[com.google.common.graph.ElementOrder].hashCode()"
    - "[com.google.inject.Key$AnnotationInstanceStrategy].hashCode()"
    - "[java.util.Hashtable].hashCode()"
    - "[com.google.common.primitives.ImmutableDoubleArray].hashCode()"
    - "[com.google.common.base.Equivalence$EquivalentToPredicate].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[com.google.common.cache.LocalCache$WriteThroughEntry].hashCode()"
    - "[com.google.common.collect.AbstractMultimap].hashCode()"
    - "[com.google.common.collect.AbstractMultiset].hashCode()"
    - "[com.google.common.collect.ByFunctionOrdering].hashCode()"
    - "[java.util.jar.Attributes$Name].hashCode()"
    - "[java.text.AttributedCharacterIterator$Attribute].hashCode()"
    - "[com.google.common.base.Suppliers$SupplierOfInstance].hashCode()"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].hashCode()"
    - "[com.google.common.reflect.TypeResolver$TypeVariableKey].hashCode()"
    - "[com.google.common.collect.ImmutableTable].hashCode()"
    - "[java.security.Timestamp].hashCode()"
    - "[java.util.jar.Attributes].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultiset].hashCode()"
    - "[com.google.common.base.Functions$ConstantFunction].hashCode()"
    - "[com.google.inject.internal.InstanceBindingImpl].hashCode()"
    - "[com.google.common.collect.Multimaps$MapMultimap].hashCode()"
    - "[java.util.Vector].hashCode()"
    - "[java.lang.invoke.LambdaForm].hashCode()"
    - "[com.google.common.net.HostAndPort].hashCode()"
    - "[com.google.common.math.PairedStats].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder].hashCode()"
    - "[java.time.LocalDateTime].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[java.time.temporal.ValueRange].hashCode()"
    - "[com.google.common.collect.MapMakerInternalMap$WriteThroughEntry].hashCode()"
    - "[com.google.inject.Key$AnnotationTypeStrategy].hashCode()"
    - "[com.google.inject.multibindings.Multibinder].hashCode()"
    - "[java.time.zone.ZoneOffsetTransitionRule].hashCode()"
    - "[sun.nio.ch.FileKey].hashCode()"
    - "[com.google.common.collect.Interners$InternerFunction].hashCode()"
    - "[com.google.common.primitives.Floats$FloatArrayAsList].hashCode()"
    - "[java.security.BasicPermission].hashCode()"
    - "[com.google.inject.multibindings.MapBinder].hashCode()"
    - "[com.google.common.collect.TreeRangeMap].hashCode()"
    - "[com.google.common.primitives.Doubles$DoubleArrayAsList].hashCode()"
    - "[java.util.AbstractList].hashCode()"
    - "[com.google.common.primitives.ImmutableLongArray].hashCode()"
    - "[java.util.ResourceBundle$CacheKey].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[com.google.common.collect.ImmutableMultimap].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWith].hashCode()"
    - "[com.google.common.eventbus.SubscriberRegistry$MethodIdentifier].hashCode()"
    - "[com.google.common.collect.TreeMultimap].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedSet].hashCode()"
    - "[java.text.DateFormatSymbols].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].hashCode()"
    - "[com.google.common.collect.ForwardingMap].hashCode()"
    - "[com.google.common.collect.RegularContiguousSet].hashCode()"
    - "[com.google.common.collect.ExplicitOrdering].hashCode()"
    - "[com.google.common.base.Absent].hashCode()"
    - "[com.google.common.reflect.Parameter].hashCode()"
    - "[sun.util.calendar.Era].hashCode()"
    - "[sun.nio.fs.UnixFileStore].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$BaseFactory].hashCode()"
    - "[com.google.common.collect.AbstractTable].hashCode()"
    - "[java.lang.ProcessHandleImpl].hashCode()"
    - "[com.google.common.graph.AbstractNetwork].hashCode()"
    - "[com.google.common.collect.ForwardingList].hashCode()"
    - "[java.security.CodeSigner].hashCode()"
    - "[com.google.inject.matcher.Matchers$Returns].hashCode()"
    - "[java.nio.FloatBuffer].hashCode()"
    - "[com.google.common.net.MediaType].hashCode()"
    - "[com.google.common.reflect.Invokable].hashCode()"
    - "[com.google.inject.matcher.Matchers$AnnotatedWithType].hashCode()"
    - "[com.google.inject.spi.Message].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[java.io.FilePermission].hashCode()"
    - "[com.google.common.reflect.TypeParameter].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].hashCode()"
    - "[com.google.inject.name.NamedImpl].hashCode()"
    - "[com.google.common.hash.Murmur3_128HashFunction].hashCode()"
    - "[java.lang.invoke.LambdaForm$Name].hashCode()"
    - "[java.util.OptionalDouble].hashCode()"
    - "[com.google.common.base.Predicates$SubtypeOfPredicate].hashCode()"
    - "[java.nio.file.attribute.AclEntry].hashCode()"
    - "[java.util.BitSet].hashCode()"
    - "[java.security.AllPermission].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[com.google.common.reflect.TypeToken].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Version].hashCode()"
    - "[com.google.common.net.HostSpecifier].hashCode()"
    - "[java.util.IdentityHashMap].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.ProviderMethod].hashCode()"
    - "[com.google.common.collect.AbstractMultimap$EntrySet].hashCode()"
    - "[java.util.WeakHashMap$Entry].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[com.google.common.math.Stats].hashCode()"
    - "[com.google.inject.internal.RealMapBinder].hashCode()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].hashCode()"
    - "[javax.crypto.spec.SecretKeySpec].hashCode()"
    - "[com.google.common.collect.ForwardingMultiset].hashCode()"
    - "[com.google.common.primitives.Shorts$ShortArrayAsList].hashCode()"
    - "[com.google.common.collect.HashBasedTable].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[com.google.common.collect.FilteredKeySetMultimap$EntrySet].hashCode()"
    - "[java.lang.reflect.Parameter].hashCode()"
    - "[com.google.inject.TypeLiteral].hashCode()"
    - "[com.google.common.collect.TreeRangeSet$AsRanges].hashCode()"
    - "[com.google.common.primitives.ImmutableDoubleArray$AsList].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.base.Predicates$ContainsPatternPredicate].hashCode()"
    - "[com.google.common.collect.ForwardingMultimap].hashCode()"
    - "[com.google.common.collect.EmptyContiguousSet].hashCode()"
    - "[com.google.common.reflect.ClassPath$ResourceInfo].hashCode()"
    - "[com.google.inject.spi.InjectionRequest].hashCode()"
    - "[javax.crypto.CryptoPermission].hashCode()"
    - "[com.google.common.base.Predicates$NotPredicate].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMultimap].hashCode()"
    - "[com.google.common.collect.LinkedListMultimap].hashCode()"
    - "[com.google.inject.internal.ConstructorBindingImpl].hashCode()"
    - "[com.google.common.base.Functions$FunctionForMapNoDefault].hashCode()"
    - "[com.google.common.base.Functions$PredicateFunction].hashCode()"
    - "[java.text.NumberFormat].hashCode()"
    - "[com.google.common.base.Converter$FunctionBasedConverter].hashCode()"
    - "[sun.util.calendar.CalendarDate].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[com.google.common.collect.AbstractMapEntry].hashCode()"
    - "[java.security.cert.Certificate].hashCode()"
    - "[com.google.common.eventbus.Subscriber].hashCode()"
    - "[java.time.zone.ZoneOffsetTransition].hashCode()"
    - "[com.google.inject.util.Providers$GuicifiedJakartaProvider].hashCode()"
    - "[com.google.inject.internal.RealMultibinder].hashCode()"
    - "[com.google.common.collect.Maps$BiMapConverter].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[java.util.Locale].hashCode()"
    - "[java.util.HashMap$Node].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[com.google.inject.util.Providers$ConstantProvider].hashCode()"
    - "[com.google.common.primitives.UnsignedLong].hashCode()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[java.nio.IntBuffer].hashCode()"
    - "[java.time.chrono.AbstractChronology].hashCode()"
    - "[java.lang.Package].hashCode()"
    - "[java.nio.LongBuffer].hashCode()"
    - "[com.google.common.base.Predicates$AndPredicate].hashCode()"
    - "[com.google.inject.internal.Scoping].hashCode()"
    - "[com.google.inject.internal.Indexer$IndexedBinding].hashCode()"
    - "[java.net.SocketPermission].hashCode()"
    - "[com.google.common.collect.Cut$AboveValue].hashCode()"
    - "[com.google.inject.spi.MembersInjectorLookup].hashCode()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$RealOptionalBinderProviderWithDependencies].hashCode()"
    - "[com.google.common.base.Present].hashCode()"
    - "[java.util.Date].hashCode()"
    - "[com.google.common.collect.ImmutableRangeMap].hashCode()"
    - "[java.util.logging.Level].hashCode()"
    - "[java.net.Inet4Address].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[com.google.common.base.Predicates$InstanceOfPredicate].hashCode()"
    - "[com.google.common.collect.Count].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Provides].hashCode()"
    - "[com.google.common.graph.EndpointPair$Ordered].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].hashCode()"
    - "[com.google.common.collect.ForwardingTable].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.io.File].hashCode()"
    - "[java.util.EnumMap].hashCode()"
    - "[java.net.NetworkInterface].hashCode()"
    - "[com.google.common.hash.Funnels$StringCharsetFunnel].hashCode()"
    - "[java.time.zone.ZoneRules].hashCode()"
    - "[com.google.common.primitives.UnsignedInteger].hashCode()"
    - "[java.security.cert.CertPath].hashCode()"
    - "[com.google.common.collect.GeneralRange].hashCode()"
    - "[com.google.common.primitives.Booleans$BooleanArrayAsList].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[com.google.common.reflect.ClassPath$LocationInfo].hashCode()"
    - "[javax.security.auth.Subject].hashCode()"
    - "[java.time.format.DecimalStyle].hashCode()"
    - "[com.google.inject.matcher.Matchers$InSubpackage].hashCode()"
    - "[com.google.common.base.Predicates$OrPredicate].hashCode()"
    - "[com.google.inject.spi.Dependency].hashCode()"
    - "[com.google.inject.internal.WeakKeySet$KeyAndSource].hashCode()"
    - "[java.time.OffsetTime].hashCode()"
    - "[com.google.common.collect.Maps$UnmodifiableEntrySet].hashCode()"
    - "[com.google.common.collect.NullsFirstOrdering].hashCode()"
    - "[com.google.inject.matcher.Matchers$AndMatcher].hashCode()"
    - "[com.google.common.primitives.Ints$IntArrayAsList].hashCode()"
    - "[com.google.common.collect.CompoundOrdering].hashCode()"
    - "[java.lang.StackTraceElement].hashCode()"
    - "[java.time.ZoneId].hashCode()"
    - "[com.google.common.collect.Maps$MapDifferenceImpl].hashCode()"
    - "[java.util.OptionalInt].hashCode()"
    - "[java.lang.Thread$WeakClassKey].hashCode()"
    - "[java.net.HttpCookie].hashCode()"
    - "[java.nio.file.attribute.FileTime].hashCode()"
    - "[java.util.PropertyPermission].hashCode()"
    - "[com.google.common.collect.Cut$AboveAll].hashCode()"
    - "[com.google.common.collect.Tables$AbstractCell].hashCode()"
    - "[com.google.common.collect.ForwardingMapEntry].hashCode()"
    - "[com.google.common.collect.ImmutableMapEntrySet].hashCode()"
    - "[com.google.common.collect.RegularImmutableBiMap].hashCode()"
    - "[java.lang.module.ModuleDescriptor].hashCode()"
    - "[java.util.jar.Manifest].hashCode()"
    - "[java.text.DateFormat].hashCode()"
    - "[java.util.zip.ZipFile$Source$Key].hashCode()"
    - "[com.google.common.primitives.Bytes$ByteArrayAsList].hashCode()"
    - "[com.google.common.collect.ImmutableList].hashCode()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].hashCode()"
    - "[java.util.zip.ZipEntry].hashCode()"
    - "[java.time.LocalDate].hashCode()"
    - "[java.util.OptionalLong].hashCode()"
    - "[java.math.BigDecimal].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Requires].hashCode()"
    - "[com.google.inject.Key].hashCode()"
    - "[com.google.common.collect.ComparatorOrdering].hashCode()"
    - "[sun.util.locale.BaseLocale].hashCode()"
    - "[java.security.CodeSource].hashCode()"
    - "[java.util.AbstractMap].hashCode()"
    - "[com.google.common.cache.CacheStats].hashCode()"
    - "[java.text.DecimalFormatSymbols].hashCode()"
    - "[java.math.MathContext].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedEntry].hashCode()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap].hashCode()"
    - "[java.nio.charset.Charset].hashCode()"
    - "[com.google.common.base.PairwiseEquivalence].hashCode()"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore$KeyBinding].hashCode()"
    - "[com.google.common.base.Predicates$InPredicate].hashCode()"
    - "[com.google.common.primitives.ImmutableIntArray$AsList].hashCode()"
    - "[com.google.common.collect.ImmutableEnumSet].hashCode()"
    - "[com.google.common.collect.NullsLastOrdering].hashCode()"
    - "[com.google.common.primitives.ImmutableLongArray$AsList].hashCode()"
    - "[java.util.logging.LogManager$CloseOnReset].hashCode()"
    - "[com.google.common.base.Suppliers$SupplierComposition].hashCode()"
    - "[com.google.inject.matcher.Matchers$OrMatcher].hashCode()"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Pred].hashCode()"
    - "[com.google.common.hash.HashCode].hashCode()"
    - "[java.time.Clock].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.lang.invoke.MethodType].hashCode()"
    - "[java.nio.ByteBuffer].hashCode()"
    - "[java.util.AbstractSet].hashCode()"
    - "[java.util.ArrayList].hashCode()"
    - "[sun.util.locale.BaseLocale$Key].hashCode()"
    - "[com.google.common.graph.EndpointPair$Unordered].hashCode()"
    - "[com.google.inject.internal.UntargettedBindingImpl].hashCode()"
    - "[com.google.inject.matcher.Matchers$Only].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[com.google.common.collect.Range].hashCode()"
    - "[com.google.common.hash.BloomFilterStrategies$LockFreeBitArray].hashCode()"
    - "[com.google.common.collect.ImmutableMultiset].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$PermitDuplicatesModule].hashCode()"
    - "[com.google.inject.matcher.Matchers$Not].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Key].hashCode()"
    - "[com.google.inject.internal.RealMultibinder$BindingSelection].hashCode()"
    - "[com.google.inject.spi.ProviderLookup].hashCode()"
    - "[java.time.ZonedDateTime].hashCode()"
    - "[com.google.common.graph.DirectedGraphConnections$NodeConnection$Succ].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[com.google.common.reflect.AbstractInvocationHandler].hashCode()"
    - "[com.google.common.base.FunctionalEquivalence].hashCode()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].hashCode()"
    - "[com.google.common.collect.AbstractRangeSet].hashCode()"
    - "[java.time.LocalTime].hashCode()"
    - "[java.util.Optional].hashCode()"
    - "[com.google.common.collect.Multisets$AbstractEntry].hashCode()"
    - "[com.google.common.reflect.Types$TypeVariableImpl].hashCode()"
    - "[com.google.common.net.InternetDomainName].hashCode()"
    - "[com.google.common.graph.AbstractGraph].hashCode()"
    - "[com.google.common.base.Enums$StringConverter].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.primitives.Chars$CharArrayAsList].hashCode()"
    - "[com.google.inject.internal.util.StackTraceElements$InMemoryStackTraceElement].hashCode()"
    - "[com.google.inject.internal.LinkedBindingImpl].hashCode()"
    - "[com.google.common.base.Converter$ReverseConverter].hashCode()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].hashCode()"
    - "[java.security.AccessControlContext].hashCode()"
    - "[com.google.common.collect.Sets$FilteredSet].hashCode()"
    - "[java.net.Proxy].hashCode()"
    - "[com.google.inject.spi.InjectionPoint$Signature].hashCode()"
    - "[com.google.inject.internal.RealElement].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedList].hashCode()"
    - "[com.google.common.collect.RegularImmutableMultiset].hashCode()"
    - "[com.google.common.primitives.Longs$LongArrayAsList].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[java.nio.ShortBuffer].hashCode()"
    - "[java.lang.ProcessBuilder$Redirect].hashCode()"
    - "[com.google.inject.internal.ProviderMethodsModule].hashCode()"
    - "[com.google.common.hash.Murmur3_32HashFunction].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].hashCode()"
    - "[com.google.inject.internal.RealOptionalBinder$BaseAnnotation].hashCode()"
    - "[com.google.common.collect.Sets$CartesianSet].hashCode()"
    - "[com.google.common.graph.AbstractValueGraph].hashCode()"
    - "[com.google.common.io.BaseEncoding$Alphabet].hashCode()"
    - "[com.google.common.collect.HashMultimap].hashCode()"
    - "[com.google.inject.spi.StaticInjectionRequest].hashCode()"
    - "[java.net.Inet6Address].hashCode()"
    - "[java.util.TreeMap$Entry].hashCode()"
    - "[com.google.inject.internal.ProviderMethodsModule$Signature].hashCode()"
    - "[com.google.common.collect.Maps$ValueDifferenceImpl].hashCode()"
    - "[java.nio.DoubleBuffer].hashCode()"
    - "[com.google.common.collect.ImmutableSet].hashCode()"
    - "[sun.util.locale.LocaleExtensions].hashCode()"
    - "[sun.nio.fs.UnixPath].hashCode()"
    - "[com.google.common.hash.Funnels$SequentialFunnel].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Opens].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[com.google.common.collect.ArrayTable].hashCode()"
    - "[java.text.ParsePosition].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[java.time.OffsetDateTime].hashCode()"
    - "[com.google.common.base.Equivalence$Wrapper].hashCode()"
    - "[com.google.common.collect.ForwardingSet].hashCode()"
    - "[jdk.internal.misc.Signal].hashCode()"
    - "[java.util.Calendar].hashCode()"
    - "[java.net.URL].hashCode()"
    - "[com.google.common.base.Converter$ConverterComposition].hashCode()"
    - "[com.google.common.cache.CacheBuilderSpec].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.text.FieldPosition].hashCode()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].hashCode()"
    - "[com.google.inject.spi.InjectionPoint].hashCode()"
    - "[java.time.Period].hashCode()"
    - "[com.google.common.collect.ReverseOrdering].hashCode()"
    - "[com.google.common.base.Predicates$IsEqualToPredicate].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[com.google.common.collect.LinkedHashMultimap].hashCode()"
    - "[java.security.Provider$ServiceKey].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].hashCode()"
    - "[com.google.common.primitives.ImmutableIntArray].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    - "[java.lang.Character$Subset].hashCode()"
    - "[com.google.inject.matcher.Matchers$IdenticalTo].hashCode()"
    - "[com.google.inject.spi.ErrorDetail].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[com.google.common.collect.ArrayListMultimap].hashCode()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].hashCode()"
    - "[com.google.common.io.BaseEncoding$StandardBaseEncoding].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$RealMapBinderProviderWithDependencies].hashCode()"
    - "[java.time.Instant].hashCode()"
    - "[java.util.Properties].hashCode()"
    - "[com.google.common.collect.Cut$BelowValue].hashCode()"
    - "[java.net.URI].hashCode()"
    - "[java.net.InetAddress].hashCode()"
    - "[com.google.inject.multibindings.OptionalBinder].hashCode()"
    - "[com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies].hashCode()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].hashCode()"
    - "[java.net.Inet6Address$Inet6AddressHolder].hashCode()"
    - "[com.google.common.collect.Synchronized$SynchronizedTable].hashCode()"
    - "[java.time.Duration].hashCode()"
    - "[com.google.common.collect.Sets$PowerSet].hashCode()"
    - "[com.google.common.base.CaseFormat$StringConverter].hashCode()"
    - "[com.google.common.base.Functions$FunctionComposition].hashCode()"
    - "[java.lang.module.ResolvedModule].hashCode()"
    - "[java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 390
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Only:242,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$Only].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$Only"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$Only:247,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor].visit(com.google.inject.Binding<T>)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.UntargettedBindingProcessor$1].<init>(com.google.inject.internal.UntargettedBindingProcessor,com.google.inject.internal.BindingImpl)"
    - "[com.google.inject.internal.ConstructorBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ExposedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.UntargettedBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$SyntheticProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.ProviderInstanceBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.LinkedProviderBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    - "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    functionUses: 1
    ICount: 8
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor:35,1"
      Dst: "[com.google.inject.internal.UntargettedBindingProcessor$1].<init>(com.google.inject.internal.UntargettedBindingProcessor,com.google.inject.internal.BindingImpl)"
    - Src: "com.google.inject.internal.UntargettedBindingProcessor:35,1"
      Dst: "[com.google.inject.Binding].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Class)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Class].getPackage()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:307,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "com.google.inject.matcher.Matchers$InPackage:307,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 62
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.matcher.Matchers$InPackage:312"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InPackage:311"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.inject.matcher.Matchers$InPackage:312"
      Branch Sides:
      - BranchSide: "com.google.inject.matcher.Matchers$InPackage:311"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:312,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].hashCode()"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Package].hashCode()"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:317,1"
      Dst: "[java.lang.Package].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].toString()"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 323
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Package].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:322,1"
      Dst: "[java.lang.Package].getName()"
    - Src: "com.google.inject.matcher.Matchers$InPackage:322,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].readResolve()"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Package].getPackage(java.lang.String)"
    - "[com.google.inject.matcher.Matchers].inPackage(java.lang.Package)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:326,1"
      Dst: "[java.lang.Package].getPackage(java.lang.String)"
    - Src: "com.google.inject.matcher.Matchers$InPackage:326,1"
      Dst: "[com.google.inject.matcher.Matchers].inPackage(java.lang.Package)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.matcher.Matchers$InPackage"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Class)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.matcher.Matchers$InPackage:296,1"
      Dst: "[com.google.inject.matcher.Matchers$InPackage].matches(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 483
    functionDepth: 2
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:482,1"
      Dst: "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 488
    functionDepth: 2
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:487,1"
      Dst: "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 498
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getLowerBounds()"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].getUpperBounds()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].getUpperBounds()"
    - "[java.lang.reflect.WildcardType].getLowerBounds()"
    - "[java.lang.reflect.WildcardType].getUpperBounds()"
    functionUses: 63
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$WildcardTypeImpl:492"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:497"
        BranchSideFuncs:
        - "getLowerBounds()"
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:496"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$WildcardTypeImpl:494"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:493"
        BranchSideFuncs:
        - "getUpperBounds()"
        - "equals(java.lang.Object)"
        - "asList(java.lang.Object[])"
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:492"
        BranchSideFuncs:
        - "getLowerBounds()"
    - Branch String: "com.google.common.reflect.Types$WildcardTypeImpl:495"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:492"
        BranchSideFuncs:
        - "getLowerBounds()"
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:494,1"
      Dst: "[java.lang.reflect.WildcardType].getLowerBounds()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:494,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:494,1"
      Dst: "[com.google.common.collect.ImmutableList].equals(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:495,1"
      Dst: "[java.lang.reflect.WildcardType].getUpperBounds()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].hashCode()"
    functionUses: 42
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:502,1"
      Dst: "[com.google.common.collect.ImmutableList].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$WildcardTypeImpl].toString()"
    functionSourceFile: "com.google.common.reflect.Types$WildcardTypeImpl"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 515
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.common.reflect.Types$JavaVersion$3].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types].access$600(java.lang.Iterable)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.FluentIterable$2].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Iterables$7].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.Iterables$6].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$3].iterator()"
    - "[com.google.common.collect.Iterables$1].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.graph.EndpointPair].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.Iterables$5].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.Iterables$9].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.base.Optional$1].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[com.google.common.graph.Traverser$4].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[com.google.common.base.Splitter$5].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.EndpointPair$Unordered].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[com.google.common.collect.TreeTraverser$4].iterator()"
    - "[com.google.common.collect.Iterables$2].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.base.Converter$1].iterator()"
    - "[com.google.common.graph.Traverser$3].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.FluentIterable$3].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.FluentIterable$1].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.graph.EndpointPair$Ordered].iterator()"
    - "[com.google.common.collect.Iterables$8].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.Iterables$UnmodifiableIterable].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.Iterables$4].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.graph.Traverser$5].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[com.google.common.collect.TreeTraverser$3].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.TreeTraverser$2].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Iterable].iterator()"
    functionUses: 22
    ICount: 28
    EdgeCount: 358
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$WildcardTypeImpl:508"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:511"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:510"
        BranchSideFuncs:
        - "hasNext()"
        - "access$600(java.lang.Iterable)"
        - "iterator()"
        - "next()"
    - Branch String: "com.google.common.reflect.Types$WildcardTypeImpl:511"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:514"
        BranchSideFuncs:
        - "typeName(java.lang.reflect.Type)"
        - "hasNext()"
        - "access$600(java.lang.Iterable)"
        - "iterator()"
        - "append(java.lang.String)"
        - "next()"
      - BranchSide: "com.google.common.reflect.Types$WildcardTypeImpl:513"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:507,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:508,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:508,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:508,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:509,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:509,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:511,1"
      Dst: "[com.google.common.reflect.Types].access$600(java.lang.Iterable)"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:511,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "com.google.common.reflect.Types$WildcardTypeImpl:514,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$2(com.google.inject.TypeLiteral,com.google.inject.Binding)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_2__171:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$2(com.google.inject.TypeLiteral,com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    - "org.aopalliance.intercept.MethodInterceptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InterceptorBinding:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.spi.InterceptorBinding:55,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.InterceptorBinding:58,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].acceptVisitor(com.google.inject.spi.ElementVisitor<T>)"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementVisitor<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.InterceptorBinding)"
    - "[com.google.inject.internal.InterceptorBindingProcessor].visit(com.google.inject.spi.InterceptorBinding)"
    - "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.InterceptorBinding)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InterceptorBinding:80,1"
      Dst: "[com.google.inject.spi.ElementVisitor].visit(com.google.inject.spi.InterceptorBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InterceptorBinding].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.spi.InterceptorBinding"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InterceptorBinding].getSource()"
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bindInterceptor(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    - "[com.google.common.collect.ImmutableAsList].size()"
    - "[com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries].size()"
    - "[com.google.common.collect.CartesianList$1].size()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].size()"
    - "[com.google.common.collect.IndexedImmutableSet$1].size()"
    - "[com.google.common.collect.RegularImmutableTable$Values].size()"
    - "[com.google.common.collect.Lists$StringAsImmutableList].size()"
    - "[com.google.common.collect.RegularImmutableMap$Values].size()"
    - "[com.google.common.collect.Sets$CartesianSet$1].size()"
    - "[com.google.common.collect.ImmutableList$SubList:com.google.common.collect.ImmutableRangeMap$1:com.google.common.collect.ImmutableRangeSet$1:com.google.common.collect.ImmutableRangeSet$ComplementRanges:com.google.common.collect.RegularImmutableList:com.google.common.collect.SingletonImmutableList].size()"
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[java.util.AbstractCollection].size()"
    - "[com.google.inject.Binder].bindInterceptor(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    functionUses: 4
    ICount: 14
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InterceptorBinding:86,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].getSource()"
    - Src: "com.google.inject.spi.InterceptorBinding:86,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.spi.InterceptorBinding:90,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "com.google.inject.spi.InterceptorBinding:90,1"
      Dst: "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    - Src: "com.google.inject.spi.InterceptorBinding:87,1"
      Dst: "[com.google.inject.Binder].bindInterceptor(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.BindingSourceRestriction$2].lambda$visit$0(com.google.inject.spi.Element)"
    functionUses: 23
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$2$lambda_visit_0__58:-1,1"
      Dst: "[com.google.inject.spi.BindingSourceRestriction$2].lambda$visit$0(com.google.inject.spi.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$1].<init>()"
    functionSourceFile: "com.google.inject.Scopes$1"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Scopes$1:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$1].scope(com.google.inject.Key,com.google.inject.Provider)"
    functionSourceFile: "com.google.inject.Scopes$1"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 2
    argTypes:
    - "com.google.inject.Key"
    - "com.google.inject.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Scopes$1].toString()"
    functionSourceFile: "com.google.inject.Scopes$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key"
    - "java.lang.Object"
    - "com.google.inject.internal.InternalFactory"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.internal.ConstructorBindingImpl$Factory"
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:59,1"
      Dst: "[com.google.inject.internal.BindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].create(com.google.inject.internal.InjectorImpl,com.google.inject.Key<T>,com.google.inject.spi.InjectionPoint,java.lang.Object,com.google.inject.internal.Scoping,com.google.inject.internal.Errors,boolean,boolean)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 145
    functionDepth: 4
    returnType: "com.google.inject.internal.ConstructorBindingImpl<T>"
    argCount: 8
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.Key<T>"
    - "com.google.inject.spi.InjectionPoint"
    - "java.lang.Object"
    - "com.google.inject.internal.Scoping"
    - "com.google.inject.internal.Errors"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].size()"
    - "[com.google.inject.TypeLiteral].getRawType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - "[com.google.inject.internal.util.Classes].isInnerClass(java.lang.Class)"
    - "[com.google.inject.internal.Errors].cannotInjectInnerClass(java.lang.Class)"
    - "[com.google.inject.internal.KotlinSupport].getInstance()"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported].isLocalClass(java.lang.Class)"
    - "[com.google.inject.internal.Errors].cannotInjectLocalClass(java.lang.Class)"
    - "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral,boolean)"
    - "[com.google.inject.ConfigurationException].getErrorMessages()"
    - "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - "[com.google.inject.internal.Errors].toException()"
    - "[com.google.inject.internal.Scoping].isExplicitlyScoped()"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - "[com.google.inject.internal.Scoping].makeInjectable(com.google.inject.internal.Scoping,com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.Scoping].forAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl$Factory].<init>(boolean,com.google.inject.Key)"
    - "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.KotlinSupportInterface].isLocalClass(java.lang.Class)"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    functionUses: 2
    ICount: 53
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:97"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:99"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:98"
        BranchSideFuncs:
        - "getDeclaringType()"
        - "getRawType()"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:102"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:107"
        BranchSideFuncs:
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:106"
        BranchSideFuncs:
        - "isInnerClass(java.lang.Class)"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:107"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:111"
        BranchSideFuncs:
        - "cannotInjectInnerClass(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:110"
        BranchSideFuncs:
        - "getInstance()"
        - "isLocalClass(java.lang.Class)"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:111"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:115"
        BranchSideFuncs:
        - "cannotInjectLocalClass(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:114"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:118"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:128"
        BranchSideFuncs:
        - "cannotInjectInnerClass(java.lang.Class)"
        - "isAbstract(int)"
        - "forConstructorOf(com.google.inject.TypeLiteral,boolean)"
        - "getErrorMessages()"
        - "getInstance()"
        - "cannotInjectLocalClass(java.lang.Class)"
        - "getModifiers()"
        - "merge(java.util.Collection)"
        - "isLocalClass(java.lang.Class)"
        - "missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
        - "getTypeLiteral()"
        - "isInnerClass(java.lang.Class)"
        - "toException()"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:127"
        BranchSideFuncs:
        - "isExplicitlyScoped()"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:138"
        BranchSideFuncs:
        - "getDeclaringClass()"
        - "findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
        - "getMember()"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:137"
        BranchSideFuncs:
        - "<init>(boolean,com.google.inject.Key)"
        - "scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
        - "throwIfNewErrors(int)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:131"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:137"
        BranchSideFuncs:
        - "<init>(boolean,com.google.inject.Key)"
        - "scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
        - "throwIfNewErrors(int)"
        - "<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:94,1"
      Dst: "[com.google.inject.internal.Errors].size()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:98,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:98,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:99,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:102,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:102,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:103,1"
      Dst: "[com.google.inject.internal.Errors].missingImplementationWithHint(com.google.inject.Key,com.google.inject.Injector)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:107,1"
      Dst: "[com.google.inject.internal.util.Classes].isInnerClass(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:108,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectInnerClass(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:111,1"
      Dst: "[com.google.inject.internal.KotlinSupport].getInstance()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:111,1"
      Dst: "[com.google.inject.internal.KotlinSupportInterface].isLocalClass(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:112,1"
      Dst: "[com.google.inject.internal.Errors].cannotInjectLocalClass(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:115,1"
      Dst: "[com.google.inject.internal.Errors].throwIfNewErrors(int)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:121,1"
      Dst: "[com.google.inject.spi.InjectionPoint].forConstructorOf(com.google.inject.TypeLiteral,boolean)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:123,1"
      Dst: "[com.google.inject.ConfigurationException].getErrorMessages()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:123,1"
      Dst: "[com.google.inject.internal.Errors].merge(java.util.Collection)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:123,1"
      Dst: "[com.google.inject.internal.Errors].toException()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:128,1"
      Dst: "[com.google.inject.internal.Scoping].isExplicitlyScoped()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:129,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:129,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:130,1"
      Dst: "[com.google.inject.internal.Annotations].findScopeAnnotation(com.google.inject.internal.Errors,java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:134,1"
      Dst: "[com.google.inject.internal.Scoping].forAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:134,1"
      Dst: "[com.google.inject.internal.Errors].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:133,1"
      Dst: "[com.google.inject.internal.Scoping].makeInjectable(com.google.inject.internal.Scoping,com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:140,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl$Factory].<init>(boolean,com.google.inject.Key)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:142,1"
      Dst: "[com.google.inject.internal.Scoping].scope(com.google.inject.Key,com.google.inject.internal.InjectorImpl,com.google.inject.internal.InternalFactory,java.lang.Object,com.google.inject.internal.Scoping)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:144,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].initialize(com.google.inject.internal.InjectorImpl,com.google.inject.internal.Errors)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.Errors"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjectorStore].get(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:152,1"
      Dst: "[com.google.inject.internal.ConstructorInjectorStore].get(com.google.inject.spi.InjectionPoint,com.google.inject.internal.Errors)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:153,1"
      Dst: "[com.google.inject.internal.ProvisionListenerCallbackStore].get(com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.ErrorsException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<?\
      \ super T,V>)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.BindingTargetVisitor<? super T,V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.BindingProcessor$1].visit(com.google.inject.spi.ConstructorBinding)"
    - "[com.google.inject.spi.DefaultBindingTargetVisitor].visit(com.google.inject.spi.ConstructorBinding)"
    - "[com.google.inject.internal.Indexer].visit(com.google.inject.spi.ConstructorBinding)"
    - "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ConstructorBinding)"
    functionUses: 4
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:192"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:192"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
        - "visit(com.google.inject.spi.ConstructorBinding)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:191"
        BranchSideFuncs:
        - "checkState(boolean,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:192,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:193,1"
      Dst: "[com.google.inject.spi.BindingTargetVisitor].visit(com.google.inject.spi.ConstructorBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getMethodInterceptors()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - "[com.google.inject.internal.ConstructionProxy].getMethodInterceptors()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:210"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:210"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:210,1"
      Dst: "[com.google.common.base.Preconditions].checkState(boolean,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:211,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].getConstructionProxy()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:211,1"
      Dst: "[com.google.inject.internal.ConstructionProxy].getMethodInterceptors()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].getDependencies()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 221
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet$Builder].<init>()"
    - "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].addAll(java.lang.Iterable)"
    - "[com.google.inject.internal.ConstructorBindingImpl].getInjectableMembers()"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].build()"
    - "[com.google.common.collect.ImmutableSet$Builder].build()"
    functionUses: 3
    ICount: 10
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:216,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].<init>()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:218,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:218,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:219,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getInjectableMembers()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:219,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].addAll(java.lang.Iterable)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:220,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].build()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:216,1"
      Dst: "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].withScoping(com.google.inject.internal.Scoping)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.Scoping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:226,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:226,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:226,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].withKey(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.internal.BindingImpl<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:232,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:232,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:232,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].<init>(com.google.inject.internal.InjectorImpl,com.google.inject.Key,java.lang.Object,com.google.inject.internal.InternalFactory,com.google.inject.internal.Scoping,com.google.inject.internal.ConstructorBindingImpl$Factory,com.google.inject.spi.InjectionPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].applyTo(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.Scoping$6].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$5].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$4].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$7].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$2].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$3].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.Scoping$1].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingBuilder].toConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    functionUses: 4
    ICount: 16
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:238,1"
      Dst: "[com.google.inject.internal.ConstructorBindingImpl].getConstructor()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:239,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:241,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:241,1"
      Dst: "[com.google.inject.spi.Elements].withTrustedSource(com.google.inject.internal.GuiceInternal,com.google.inject.Binder,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:242,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:242,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:244,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:245,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDeclaringType()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:243,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toConstructor(java.lang.reflect.Constructor,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:240,1"
      Dst: "[com.google.inject.internal.Scoping].applyTo(com.google.inject.binder.ScopedBindingBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].toString()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getSource()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:250,1"
      Dst: "[com.google.common.base.MoreObjects].toStringHelper(java.lang.Class)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:251,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:251,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].add(java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:252,1"
      Dst: "[com.google.inject.internal.BindingImpl].getSource()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:253,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:254,1"
      Dst: "[com.google.common.base.MoreObjects$ToStringHelper].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 266
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 57
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:259"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:265"
        BranchSideFuncs:
        - "getKey()"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:264"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:261"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:-1"
        BranchSideFuncs:
        - "getScoping()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:262"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:-1"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ConstructorBindingImpl:263"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ConstructorBindingImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:261,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:261,1"
      Dst: "[com.google.inject.Key].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:262,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:262,1"
      Dst: "[com.google.inject.internal.Scoping].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:263,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ConstructorBindingImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.ConstructorBindingImpl"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorBindingImpl:271,1"
      Dst: "[com.google.inject.internal.BindingImpl].getKey()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:271,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.ConstructorBindingImpl:271,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$add__57].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$add__57"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedSet$Builder].add(java.lang.Object)"
    functionUses: 23
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$add__57:-1,1"
      Dst: "[com.google.common.collect.ImmutableSet$Builder].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$NullableProvidesOption].values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$NullableProvidesOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.EnumSet:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$NullableProvidesOption:86,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$NullableProvidesOption].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$NullableProvidesOption:86,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$NullableProvidesOption].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalFlags$NullableProvidesOption:86,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalFlags$NullableProvidesOption].$values()"
    functionSourceFile: "com.google.inject.internal.InternalFlags$NullableProvidesOption"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalFlags$NullableProvidesOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$KeyAndSource].hashCode()"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$KeyAndSource"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$KeyAndSource:123,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.WeakKeySet$KeyAndSource].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.WeakKeySet$KeyAndSource"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 56
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.internal.WeakKeySet$KeyAndSource:128"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:132"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:131"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.WeakKeySet$KeyAndSource:132"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:136"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:135"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.WeakKeySet$KeyAndSource:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:135"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.WeakKeySet$KeyAndSource:137"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.WeakKeySet$KeyAndSource:135"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.WeakKeySet$KeyAndSource:137,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ClassBuilding].lambda$getOverridableObjectMethods$2(java.util.List,java.lang.reflect.Method)"
    functionUses: 25
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ClassBuilding$lambda_getOverridableObjectMethods_2__37:-1,1"
      Dst: "[com.google.inject.internal.aop.ClassBuilding].lambda$getOverridableObjectMethods$2(java.util.List,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$RootModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$RootModule"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 343
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bindScope(java.lang.Class,com.google.inject.Scope)"
    - "[com.google.inject.Binder].withSource(java.lang.Object)"
    - "[com.google.inject.Binder].bindScope(java.lang.Class,com.google.inject.Scope)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$RootModule:339,1"
      Dst: "[com.google.inject.Binder].withSource(java.lang.Object)"
    - Src: "com.google.inject.internal.InjectorShell$RootModule:340,1"
      Dst: "[com.google.inject.Binder].bindScope(java.lang.Class,com.google.inject.Scope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ConstructorInjector$1].call()"
    functionSourceFile: "com.google.inject.internal.ConstructorInjector$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ConstructorInjector].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ConstructorInjector$1:98,1"
      Dst: "[com.google.inject.internal.ConstructorInjector].provision(com.google.inject.internal.InternalContext,com.google.inject.internal.ConstructionContext)"
    JavaMethodInfo:
      exceptions:
      - "com.google.inject.internal.InternalProvisionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].values()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Key$NullAnnotationStrategy[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$NullAnnotationStrategy:388,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Key$NullAnnotationStrategy"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$NullAnnotationStrategy:388,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$NullAnnotationStrategy:388,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].hasAttributes()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].withoutAttributes()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 399
    functionDepth: 0
    returnType: "com.google.inject.Key$AnnotationStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.Key$NullAnnotationStrategy:398,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].getAnnotation()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 404
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].getAnnotationType()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].toString()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.Key$NullAnnotationStrategy].$values()"
    functionSourceFile: "com.google.inject.Key$NullAnnotationStrategy"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "com.google.inject.Key$NullAnnotationStrategy[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$lambda_new_0__164].get()"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationError].lambda$new$0(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$lambda_new_0__164:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationError].lambda$new$0(com.google.inject.Key,com.google.inject.Injector,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].getMemberInjectors()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].of()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MembersInjectorImpl:65"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MembersInjectorImpl:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:65,1"
      Dst: "[com.google.common.collect.ImmutableList].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].injectMembers(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MembersInjectorImpl].injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    - "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:72,1"
      Dst: "[com.google.inject.internal.MembersInjectorImpl].injectAndNotify(java.lang.Object,com.google.inject.Key,com.google.inject.internal.ProvisionListenerStackCallback,java.lang.Object,boolean)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:74,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].addSource(java.lang.Object)"
    - Src: "com.google.inject.internal.MembersInjectorImpl:74,1"
      Dst: "[com.google.inject.internal.InternalProvisionException].toProvisionException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MembersInjectorImpl].toString()"
    functionSourceFile: "com.google.inject.internal.MembersInjectorImpl"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    functionUses: 19
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MembersInjectorImpl:171,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "com.google.inject.Module"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:83,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].forObject(java.lang.Object,boolean,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProviderMethodsModule].getProviderMethods(com.google.inject.Binder)"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator:com.google.common.collect.AbstractIndexedListIterator:com.google.common.collect.AbstractSequentialIterator:com.google.common.collect.CompactHashMap$Itr:com.google.common.collect.CompactHashSet$1:com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1:com.google.common.collect.Iterators$3:com.google.common.collect.Iterators$EmptyModifiableIterator:com.google.common.collect.LinkedListMultimap$ValueForKeyIterator:com.google.common.collect.MapMakerInternalMap$HashIterator:com.google.common.collect.Sets$SubSet$1:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.ArrayBlockingQueue$Itr:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[com.google.inject.internal.ProviderMethod].configure(com.google.inject.Binder)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 126
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:106"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:109"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "configure(com.google.inject.Binder)"
        - "next()"
        - "getProviderMethods(com.google.inject.Binder)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:106,1"
      Dst: "[com.google.inject.internal.ProviderMethodsModule].getProviderMethods(com.google.inject.Binder)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:106,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.ProviderMethodsModule:107,1"
      Dst: "[com.google.inject.internal.ProviderMethod].configure(com.google.inject.Binder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].getKey(com.google.inject.internal.Errors,com.google.inject.TypeLiteral<T>,java.lang.reflect.Member,java.lang.annotation.Annotation[])"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 339
    functionDepth: 3
    returnType: "com.google.inject.Key<T>"
    argCount: 4
    argTypes:
    - "com.google.inject.internal.Errors"
    - "com.google.inject.TypeLiteral<T>"
    - "java.lang.reflect.Member"
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:338"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:336"
        BranchSideFuncs:
        - "findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
        - "get(com.google.inject.TypeLiteral)"
        - "get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:337,1"
      Dst: "[com.google.inject.internal.Annotations].findBindingAnnotation(com.google.inject.internal.Errors,java.lang.reflect.Member,java.lang.'annotation'.Annotation[])"
    - Src: "com.google.inject.internal.ProviderMethodsModule:338,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.ProviderMethodsModule:338,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 346
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 56
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:343"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:343"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.ProviderMethodsModule:345"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ProviderMethodsModule:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:345,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.ProviderMethodsModule].hashCode()"
    functionSourceFile: "com.google.inject.internal.ProviderMethodsModule"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 351
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.ProviderMethodsModule:350,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.PrivateElementProcessor].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.internal.PrivateElementProcessor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionDepth: 5
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorShell$Builder].<init>()"
    - "[com.google.inject.internal.InjectorShell$Builder].parent(com.google.inject.internal.InjectorImpl)"
    - "[com.google.inject.internal.InjectorShell$Builder].privateElements(com.google.inject.spi.PrivateElements)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.PrivateElementProcessor:38,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].<init>()"
    - Src: "com.google.inject.internal.PrivateElementProcessor:39,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].parent(com.google.inject.internal.InjectorImpl)"
    - Src: "com.google.inject.internal.PrivateElementProcessor:39,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].privateElements(com.google.inject.spi.PrivateElements)"
    - Src: "com.google.inject.internal.PrivateElementProcessor:40,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.internal.PrivateElementProcessor:41,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[org.objectweb.asm.Edge].<init>(int,org.objectweb.asm.Label,org.objectweb.asm.Edge)"
    functionSourceFile: "org.objectweb.asm.Edge"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.objectweb.asm.Edge:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.KotlinSupport$KotlinSupportHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.KotlinSupport$KotlinSupportHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.KotlinSupport$KotlinSupportHolder:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$LoggerFactory].get(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency,boolean)"
    functionSourceFile: "com.google.inject.internal.InjectorShell$LoggerFactory"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 310
    functionDepth: 1
    returnType: "java.util.logging.Logger"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - "[java.util.logging.Logger].getAnonymousLogger()"
    - "[com.google.common.reflect.Invokable].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.util.logging.Logger].getLogger(java.lang.String)"
    - "[com.google.inject.spi.InjectionPoint].getMember()"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    functionUses: 12
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InjectorShell$LoggerFactory:307"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InjectorShell$LoggerFactory:309"
        BranchSideFuncs:
        - "getAnonymousLogger()"
      - BranchSide: "com.google.inject.internal.InjectorShell$LoggerFactory:308"
        BranchSideFuncs:
        - "getName()"
        - "getMember()"
        - "getDeclaringClass()"
        - "getLogger(java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:306,1"
      Dst: "[com.google.inject.spi.Dependency].getInjectionPoint()"
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:308,1"
      Dst: "[java.util.logging.Logger].getAnonymousLogger()"
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:309,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getMember()"
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:309,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:309,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:309,1"
      Dst: "[java.util.logging.Logger].getLogger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.InjectorShell$LoggerFactory].get()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$LoggerFactory"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "java.util.logging.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.logging.Logger].getAnonymousLogger()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InjectorShell$LoggerFactory:314,1"
      Dst: "[java.util.logging.Logger].getAnonymousLogger()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InjectorShell$LoggerFactory].toString()"
    functionSourceFile: "com.google.inject.internal.InjectorShell$LoggerFactory"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.EnhancerBuilderImpl].lambda$doBuildEnhancer$0(java.util.NavigableMap,java.lang.reflect.Constructor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.EnhancerBuilderImpl$lambda_doBuildEnhancer_0__198:-1,1"
      Dst: "[com.google.inject.internal.aop.EnhancerBuilderImpl].lambda$doBuildEnhancer$0(java.util.NavigableMap,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming].values()"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[java.lang.Enum].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumMap:java.util.EnumSet:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming:20,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming:20,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming:20,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming].$values()"
    functionSourceFile: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "com.google.inject.internal.InternalProviderInstanceBindingImpl$InitializationTiming[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].newMapRealBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder<K,V>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:78,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:78,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:79,1"
      Dst: "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:79,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:74,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:92,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:92,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.internal.RealMapBinder:94,1"
      Dst: "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:93,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:88,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.RealMapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.Class)"
    - "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:110,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:110,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral,java.lang.Class)"
    - Src: "com.google.inject.internal.RealMapBinder:112,1"
      Dst: "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:111,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:106,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,V>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:118,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:118,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:118,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,Provider<V>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:125,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:125,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:125,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:125,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfJakartaProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,jakarta.inject.Provider<V>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:135,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:136,1"
      Dst: "[com.google.inject.util.Types].newParameterizedType(java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealMapBinder:134,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:133,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfSetOfProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,Set<Provider<V>>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:144,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:144,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:144,1"
      Dst: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:144,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:143,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfSetOfJakartaProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,Set<jakarta.inject.Provider<V>>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:153,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:153,1"
      Dst: "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:153,1"
      Dst: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:152,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:151,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,Collection<Provider<V>>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:162,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:162,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:162,1"
      Dst: "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:161,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:160,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].mapOfCollectionOfJakartaProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map<K,Collection<jakarta.inject.Provider<V>>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:172,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:173,1"
      Dst: "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:173,1"
      Dst: "[com.google.inject.util.Types].collectionOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:171,1"
      Dst: "[com.google.inject.util.Types].mapOf(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:170,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map.Entry<K,Provider<V>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:184,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:185,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:181,1"
      Dst: "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealMapBinder:180,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].entryOfJakartaProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Map.Entry<K,Provider<V>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:196,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:197,1"
      Dst: "[com.google.inject.util.Types].jakartaProviderOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:193,1"
      Dst: "[com.google.inject.util.Types].newParameterizedTypeWithOwner(java.lang.reflect.Type,java.lang.reflect.Type,java.lang.reflect.Type[])"
    - Src: "com.google.inject.internal.RealMapBinder:192,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].setOfEntryOfJakartaProviderOf(com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 5
    returnType: "com.google.inject.TypeLiteral<Set<Map.Entry<K,jakarta.inject.Provider<V>>>>"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].entryOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:205,1"
      Dst: "[com.google.inject.internal.RealMapBinder].entryOfJakartaProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:205,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:205,1"
      Dst: "[com.google.inject.util.Types].setOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:205,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].getKeyOfProvider(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 7
    returnType: "com.google.inject.Key<Provider<T>>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getType()"
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    - "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:212,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMapBinder:212,1"
      Dst: "[com.google.inject.TypeLiteral].getType()"
    - Src: "com.google.inject.internal.RealMapBinder:212,1"
      Dst: "[com.google.inject.util.Types].providerOf(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.RealMapBinder:212,1"
      Dst: "[com.google.inject.Key].ofType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.Key<V>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionDepth: 1
    returnType: "com.google.inject.internal.RealMapBinder<K,V>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.Key<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].getTypeLiteral()"
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    - "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    functionUses: 1
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:220,1"
      Dst: "[com.google.inject.Key].getTypeLiteral()"
    - Src: "com.google.inject.internal.RealMapBinder:225,1"
      Dst: "[com.google.inject.internal.RealMapBinder].mapOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:225,1"
      Dst: "[com.google.inject.Key].ofType(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:227,1"
      Dst: "[com.google.inject.internal.RealMapBinder].entryOfProviderOf(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.internal.RealMapBinder:226,1"
      Dst: "[com.google.inject.internal.RealMultibinder].newRealSetBinder(com.google.inject.Binder,com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:221,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>,com.google.inject.Key<Map<K,V>>,com.google.inject.internal.RealMultibinder<Map.Entry<K,Provider<V>>>)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 240
    functionDepth: 2
    returnType: "com.google.inject.internal.RealMapBinder<K,V>"
    argCount: 5
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    - "com.google.inject.Key<Map<K,V>>"
    - "com.google.inject.internal.RealMultibinder<Map.Entry<K,Provider<V>>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].<init>(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    - "[com.google.inject.spi.Elements$RecordingBinder].install(com.google.inject.Module)"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:236,1"
      Dst: "[com.google.inject.internal.RealMapBinder].<init>(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    - Src: "com.google.inject.internal.RealMapBinder:238,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].<init>(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.TypeLiteral"
    - "com.google.inject.Key"
    - "com.google.inject.internal.RealMultibinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].<init>(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:257,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.inject.internal.RealMapBinder:258,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].<init>(com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,com.google.inject.Key,com.google.inject.internal.RealMultibinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].permitDuplicates()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMultibinder].permitDuplicates()"
    - "[com.google.inject.internal.RealMapBinder$MultimapBinder].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - "[com.google.inject.Binder].install(com.google.inject.Module)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder:264"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder:264"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.RealMapBinder:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:264,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder:264,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMapBinder:265,1"
      Dst: "[com.google.inject.internal.RealMultibinder].permitDuplicates()"
    - Src: "com.google.inject.internal.RealMapBinder:266,1"
      Dst: "[com.google.inject.internal.RealMapBinder$MultimapBinder].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealMapBinder:266,1"
      Dst: "[com.google.inject.Binder].install(com.google.inject.Module)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder].addBinding(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].getKeyForNewValue(java.lang.Object)"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:290,1"
      Dst: "[com.google.inject.internal.RealMapBinder].getKeyForNewValue(java.lang.Object)"
    - Src: "com.google.inject.internal.RealMapBinder:290,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealMapBinder].configure(com.google.inject.Binder)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 325
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - "[com.google.inject.internal.BindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - "[com.google.inject.internal.BindingBuilder].'to'(com.google.inject.Key)"
    - "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetJakartaProviderKey()"
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - "[com.google.inject.internal.RealMultibinder].getSetKey()"
    - "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    functionUses: 1
    ICount: 44
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder:296"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder:296"
        BranchSideFuncs:
        - "getJakartaProviderMapKey()"
        - "getEntrySetJakartaProviderKey()"
        - "toProvider(com.google.inject.Provider)"
        - "getMapOfKeyExtendsValueKey()"
        - "'to'(com.google.inject.Key)"
        - "getSetKey()"
        - "getEntrySetBinder()"
        - "getProviderMapKey()"
        - "isInitialized()"
        - "<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
        - "getMapKey()"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
        - "bind(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.RealMapBinder:295"
        BranchSideFuncs:
        - "isInitialized()"
        - "checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:296,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].isInitialized()"
    - Src: "com.google.inject.internal.RealMapBinder:296,1"
      Dst: "[com.google.inject.internal.Errors].checkConfiguration(boolean,java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.internal.RealMapBinder:300,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder:300,1"
      Dst: "[com.google.inject.Binder].bind(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:300,1"
      Dst: "[com.google.inject.internal.RealMapBinder$RealProviderMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealMapBinder:301,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].toProvider(com.google.inject.Provider)"
    - Src: "com.google.inject.internal.RealMapBinder:307,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getJakartaProviderMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder:308,1"
      Dst: "[com.google.inject.binder.LinkedBindingBuilder].'to'(com.google.inject.Key)"
    - Src: "com.google.inject.internal.RealMapBinder:312,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapKey()"
    - Src: "com.google.inject.internal.RealMapBinder:312,1"
      Dst: "[com.google.inject.internal.RealMapBinder$ExtensionRealMapProvider].<init>(com.google.inject.internal.RealMapBinder$BindingSelection)"
    - Src: "com.google.inject.internal.RealMapBinder:316,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getMapOfKeyExtendsValueKey()"
    - Src: "com.google.inject.internal.RealMapBinder:322,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetJakartaProviderKey()"
    - Src: "com.google.inject.internal.RealMapBinder:323,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].getEntrySetBinder()"
    - Src: "com.google.inject.internal.RealMapBinder:323,1"
      Dst: "[com.google.inject.internal.RealMultibinder].getSetKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    functionUses: 57
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealMapBinder:328"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder:328"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.RealMapBinder:327"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.RealMapBinder:329"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealMapBinder:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:329,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.RealMapBinder].hashCode()"
    functionSourceFile: "com.google.inject.internal.RealMapBinder"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    functionUses: 35
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealMapBinder:334,1"
      Dst: "[com.google.inject.internal.RealMapBinder$BindingSelection].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].get(com.google.inject.Key<T>)"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "com.google.inject.spi.Dependency<T>"
    argCount: 1
    argTypes:
    - "com.google.inject.Key<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].<init>(com.google.inject.spi.InjectionPoint,com.google.inject.Key,boolean,int)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    functionUses: 20
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Dependency:57,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - Src: "com.google.inject.spi.Dependency:57,1"
      Dst: "[com.google.inject.spi.Dependency].<init>(com.google.inject.spi.InjectionPoint,com.google.inject.Key,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].forInjectionPoints(java.util.Set<InjectionPoint>)"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "java.util.Set<Dependency<?>>"
    argCount: 1
    argTypes:
    - "java.util.Set<InjectionPoint>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Lists].newArrayList()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 4
    ICount: 12
    EdgeCount: 201
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Dependency:63"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:66"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getDependencies()"
        - "next()"
        - "addAll(java.util.Collection)"
      - BranchSide: "com.google.inject.spi.Dependency:65"
        BranchSideFuncs:
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "com.google.inject.spi.Dependency:62,1"
      Dst: "[com.google.common.collect.Lists].newArrayList()"
    - Src: "com.google.inject.spi.Dependency:63,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.spi.Dependency:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.spi.Dependency:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.spi.Dependency:64,1"
      Dst: "[com.google.inject.spi.InjectionPoint].getDependencies()"
    - Src: "com.google.inject.spi.Dependency:64,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "com.google.inject.spi.Dependency:66,1"
      Dst: "[com.google.common.collect.ImmutableSet].copyOf(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Dependency].hashCode()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 34
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Dependency:98,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.spi.Dependency:98,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Dependency].toString()"
    functionSourceFile: "com.google.inject.spi.Dependency"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Dependency:117"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:123"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "com.google.inject.spi.Dependency:122"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "com.google.inject.spi.Dependency:119"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Dependency:123"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "com.google.inject.spi.Dependency:122"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "com.google.inject.spi.Dependency:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.inject.spi.Dependency:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "com.google.inject.spi.Dependency:118,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.inject.spi.Dependency:120,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "com.google.inject.spi.Dependency:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.HiddenClassDefiner].define(java.lang.Class<?>,byte[])"
    functionSourceFile: "com.google.inject.internal.aop.HiddenClassDefiner"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[sun.misc.Unsafe].getObject(java.lang.Object,long)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.invoke.MethodHandles$Lookup].in(java.lang.Class)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    functionUses: 2
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.HiddenClassDefiner:75"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.HiddenClassDefiner:82"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "com.google.inject.internal.aop.HiddenClassDefiner:81"
        BranchSideFuncs:
        - "getObject(java.lang.Object,long)"
        - "lookupClass()"
        - "valueOf(boolean)"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "in(java.lang.Class)"
    Callsites:
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:76,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:82,1"
      Dst: "[sun.misc.Unsafe].getObject(java.lang.Object,long)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:86,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].in(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:86,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:85,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:87,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.HiddenClassDefiner].classOptions(java.lang.String[])"
    functionSourceFile: "com.google.inject.internal.aop.HiddenClassDefiner"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.reflect.Array].set(java.lang.Object,int,java.lang.Object)"
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.HiddenClassDefiner:96"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.HiddenClassDefiner:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:94,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:94,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:94,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:95,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:97,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - Src: "com.google.inject.internal.aop.HiddenClassDefiner:97,1"
      Dst: "[java.lang.reflect.Array].set(java.lang.Object,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.CreationException].getMessage()"
    functionSourceFile: "com.google.inject.CreationException"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.CreationException:50,1"
      Dst: "[com.google.inject.internal.Messages].formatMessages(java.lang.String,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$InjectableMethod].toInjectionPoint()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$InjectableMethod"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 532
    functionDepth: 2
    returnType: "com.google.inject.spi.InjectionPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$InjectableMethod:531,1"
      Dst: "[com.google.inject.spi.InjectionPoint].<init>(com.google.inject.TypeLiteral,java.lang.reflect.Method,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.common.base.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205:-1,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.ChildClassDefiner].childLoader(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.ChildClassDefiner$ChildLoaderCacheHolder$childLoader__205:-1,1"
      Dst: "[com.google.inject.internal.aop.ChildClassDefiner].childLoader(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$3].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$3"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$3:580,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].<init>(java.lang.String,int,com.google.common.reflect.Types$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$3].newArrayType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$3"
    linkageType: ""
    functionLinenumber: 582
    functionLinenumberEnd: 584
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$2].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$1].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].newArrayType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$3:583,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].newArrayType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$3].usedInGenericType(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$3"
    linkageType: ""
    functionLinenumber: 587
    functionLinenumberEnd: 589
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$JavaVersion$1].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$3].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$2].usedInGenericType(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    functionUses: 4
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$3:588,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].usedInGenericType(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$3].typeName(java.lang.reflect.Type)"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$3"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 607
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 5
    ICount: 21
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$3:594,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "com.google.common.reflect.Types$JavaVersion$3:595,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.common.reflect.Types$JavaVersion$3:597,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$JavaVersion$3:604,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer].generateGlue(java.util.Collection<Executable>)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 215
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.util.Collection<Executable>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].<init>(int)"
    - "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.FieldVisitor].visitEnd()"
    - "[org.objectweb.asm.FieldWriter].visitEnd()"
    - "[com.google.inject.internal.aop.Enhancer].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].generateTrampoline(org.objectweb.asm.ClassWriter,java.util.Collection)"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$NavigableAsMap].keySet()"
    - "[com.google.common.collect.StandardRowSortedTable$RowSortedMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedNavigableMap].keySet()"
    - "[com.google.common.collect.ForwardingMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].keySet()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].keySet()"
    - "[com.google.common.collect.HashBiMap].keySet()"
    - "[com.google.common.collect.ImmutableMap].keySet()"
    - "[java.util.EnumMap].keySet()"
    - "[com.google.common.collect.HashBiMap$Inverse].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[com.google.common.collect.Maps$FilteredEntrySortedMap].keySet()"
    - "[com.google.common.collect.StandardTable$ColumnMap].keySet()"
    - "[com.google.common.collect.AbstractNavigableMap].keySet()"
    - "[com.google.common.collect.ImmutableSortedMap].keySet()"
    - "[com.google.common.collect.MapMakerInternalMap].keySet()"
    - "[com.google.common.collect.Maps$ViewCachingAbstractMap].keySet()"
    - "[com.google.common.collect.Maps$SortedAsMapView].keySet()"
    - "[com.google.common.cache.LocalCache].keySet()"
    - "[com.google.common.collect.EnumHashBiMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].keySet()"
    - "[com.google.common.collect.ArrayTable$ArrayMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$SortedAsMap].keySet()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[com.google.common.collect.Multimaps$AsMap].keySet()"
    - "[com.google.common.collect.Maps$DescendingMap].keySet()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].keySet()"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].keySet()"
    - "[com.google.common.collect.Maps$UnmodifiableNavigableMap].keySet()"
    - "[com.google.common.collect.AbstractBiMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.security.Provider].keySet()"
    - "[com.google.common.collect.EnumBiMap].keySet()"
    - "[com.google.common.collect.CompactHashMap].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.MapMakerInternalMap$HashIterator].hasNext()"
    - "[com.google.common.collect.ForwardingIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].hasNext()"
    - "[com.google.common.collect.Iterables$6$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].hasNext()"
    - "[com.google.common.collect.AbstractIndexedListIterator].hasNext()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].hasNext()"
    - "[com.google.common.collect.Lists$ReverseList$1].hasNext()"
    - "[com.google.common.collect.Iterators$2].hasNext()"
    - "[com.google.common.collect.CompactHashMap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[com.google.common.collect.AbstractSequentialIterator].hasNext()"
    - "[com.google.common.collect.TransformedIterator].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$Row$1].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].hasNext()"
    - "[com.google.common.base.Converter$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].hasNext()"
    - "[com.google.common.collect.StandardTable$CellIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$1].hasNext()"
    - "[com.google.common.collect.TreeMultiset$3].hasNext()"
    - "[com.google.common.collect.HashBiMap$Itr].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].hasNext()"
    - "[com.google.common.collect.TreeMultiset$2].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.CompactHashSet$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.Iterators$7].hasNext()"
    - "[com.google.common.collect.Sets$SubSet$1].hasNext()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].hasNext()"
    - "[com.google.common.collect.AbstractBiMap$1].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].hasNext()"
    - "[com.google.common.collect.Iterators$PeekingImpl].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[com.google.common.collect.EnumMultiset$Itr].hasNext()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].hasNext()"
    - "[com.google.common.base.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].hasNext()"
    - "[com.google.common.cache.LocalCache$HashIterator].hasNext()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].iterator()"
    - "[com.google.common.collect.LinkedHashMultiset].iterator()"
    - "[com.google.common.collect.ConcurrentHashMultiset].iterator()"
    - "[com.google.common.collect.AbstractMultiset$ElementSet].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.reflect.MutableTypeToInstanceMap$UnmodifiableEntry$1].iterator()"
    - "[com.google.common.collect.HashBiMap$Inverse$InverseKeySet].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$Values].iterator()"
    - "[com.google.common.collect.Maps$KeySet].iterator()"
    - "[com.google.common.collect.ImmutableSetMultimap$EntrySet].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnKeySet].iterator()"
    - "[com.google.common.collect.StandardTable$RowMap$EntrySet].iterator()"
    - "[java.util.concurrent.PriorityBlockingQueue].iterator()"
    - "[com.google.common.collect.ImmutableMapValues].iterator()"
    - "[java.util.PriorityQueue].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$Values].iterator()"
    - "[com.google.common.collect.ImmutableRangeSet$AsSet].iterator()"
    - "[java.util.concurrent.ArrayBlockingQueue].iterator()"
    - "[com.google.common.collect.Collections2$OrderedPermutationCollection].iterator()"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet].iterator()"
    - "[com.google.common.collect.Sets$1].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].iterator()"
    - "[com.google.common.collect.EnumMultiset].iterator()"
    - "[com.google.common.collect.CompactHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.EmptyContiguousSet].iterator()"
    - "[com.google.common.graph.AbstractNetwork$1$1].iterator()"
    - "[com.google.common.collect.Sets$PowerSet].iterator()"
    - "[com.google.common.collect.ImmutableMapEntrySet$RegularEntrySet].iterator()"
    - "[com.google.common.collect.RegularContiguousSet].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet].iterator()"
    - "[com.google.common.collect.Sets$4].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[com.google.common.collect.AbstractSortedMultiset$1DescendingMultisetImpl].iterator()"
    - "[com.google.common.cache.LocalCache$Values].iterator()"
    - "[com.google.common.collect.DescendingMultiset$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.ImmutableMultimap$EntryCollection].iterator()"
    - "[com.google.common.collect.StandardTable$ColumnMap$ColumnMapEntrySet].iterator()"
    - "[java.util.Vector].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapEntries].iterator()"
    - "[com.google.common.collect.Sets$2].iterator()"
    - "[com.google.common.collect.AbstractTable$CellSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$CachingAsList].iterator()"
    - "[com.google.common.collect.Multisets$FilteredMultiset].iterator()"
    - "[com.google.common.cache.LocalCache$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[com.google.common.collect.CompactHashMap$ValuesView].iterator()"
    - "[com.google.common.cache.LocalCache$WriteQueue].iterator()"
    - "[com.google.common.collect.Multisets$UnmodifiableMultiset].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[com.google.common.graph.AbstractDirectedNetworkConnections$1].iterator()"
    - "[com.google.common.graph.MapIteratorCache$1].iterator()"
    - "[com.google.common.collect.Multimaps$Keys].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$2].iterator()"
    - "[com.google.common.collect.SortedMultisets$ElementSet].iterator()"
    - "[com.google.common.collect.RegularImmutableSortedSet].iterator()"
    - "[com.google.common.collect.FilteredMultimapValues].iterator()"
    - "[com.google.common.graph.MultiEdgesConnecting].iterator()"
    - "[java.util.concurrent.CopyOnWriteArraySet].iterator()"
    - "[com.google.common.collect.Sets$SubSet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$EntrySet].iterator()"
    - "[com.google.common.collect.ForwardingMultiset$StandardElementSet].iterator()"
    - "[com.google.common.collect.Maps$IteratorBasedAbstractMap$1].iterator()"
    - "[com.google.common.collect.ImmutableSortedMap$1EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$ReverseImmutableList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultiset].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[com.google.common.collect.Lists$ReverseList].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$3].iterator()"
    - "[com.google.common.graph.StandardValueGraph$1].iterator()"
    - "[com.google.common.collect.StandardTable$Column$EntrySet].iterator()"
    - "[com.google.common.collect.Maps$AsMapView$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[com.google.common.collect.Maps$FilteredEntryMap$EntrySet].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapValues].iterator()"
    - "[com.google.common.collect.AbstractTable$Values].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$KeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Values].iterator()"
    - "[com.google.common.collect.LinkedListMultimap$1KeySetImpl].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[com.google.common.collect.TreeMultiset].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[com.google.common.collect.AbstractBiMap$ValueSet].iterator()"
    - "[com.google.common.collect.Sets$DescendingSet].iterator()"
    - "[com.google.common.cache.LocalCache$EntrySet].iterator()"
    - "[com.google.common.collect.ImmutableList$SubList].iterator()"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap$2].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[com.google.common.collect.DescendingImmutableSortedSet].iterator()"
    - "[com.google.common.collect.Sets$5$1$1].iterator()"
    - "[com.google.common.collect.Collections2$TransformedCollection].iterator()"
    - "[com.google.common.collect.Collections2$FilteredCollection].iterator()"
    - "[com.google.common.collect.CompactHashSet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[com.google.common.collect.ImmutableMultiset].iterator()"
    - "[com.google.common.collect.DescendingMultiset].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$2].iterator()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.MutableClassToInstanceMap$2].iterator()"
    - "[com.google.common.collect.AbstractMultiset$EntrySet].iterator()"
    - "[com.google.common.collect.MinMaxPriorityQueue].iterator()"
    - "[com.google.common.graph.AbstractBaseGraph$1].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[com.google.common.collect.IndexedImmutableSet].iterator()"
    - "[com.google.common.collect.ImmutableSet$Indexed].iterator()"
    - "[com.google.common.collect.MapMakerInternalMap$EntrySet].iterator()"
    - "[com.google.common.collect.AbstractBiMap$KeySet].iterator()"
    - "[com.google.common.cache.LocalCache$KeySet].iterator()"
    - "[com.google.common.collect.CompactHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMapEntries].iterator()"
    - "[com.google.common.collect.ImmutableEnumSet].iterator()"
    - "[com.google.common.collect.ImmutableMapKeySet].iterator()"
    - "[com.google.common.collect.SingletonImmutableSet].iterator()"
    - "[com.google.common.collect.Sets$3].iterator()"
    - "[com.google.common.collect.Multisets$ViewMultiset].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$Keys$1].iterator()"
    - "[com.google.common.collect.Sets$5].iterator()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1].iterator()"
    - "[com.google.common.collect.Maps$DescendingMap$1EntrySetImpl].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[com.google.common.collect.ImmutableMap$IteratorBasedImmutableMap$1EntrySetImpl].iterator()"
    - "[com.google.common.graph.DirectedGraphConnections$1].iterator()"
    - "[com.google.common.collect.Multimaps$AsMap$EntrySet].iterator()"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList].iterator()"
    - "[com.google.common.cache.LocalCache$AccessQueue].iterator()"
    - "[com.google.common.graph.Graphs$TransposedGraph$1].iterator()"
    - "[com.google.common.collect.ForwardingCollection].iterator()"
    - "[com.google.common.collect.HashMultiset].iterator()"
    - "[com.google.common.graph.EdgesConnecting].iterator()"
    - "[com.google.common.collect.Collections2$PermutationCollection].iterator()"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap$1EntrySetImpl].iterator()"
    - "[com.google.common.collect.RegularImmutableSet].iterator()"
    - "[com.google.common.collect.Maps$Values].iterator()"
    - "[com.google.common.collect.HashBiMap$KeySet].iterator()"
    - "[com.google.common.collect.Maps$UnmodifiableEntries].iterator()"
    - "[com.google.common.collect.AbstractMultimap$Entries].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[java.util.concurrent.SynchronousQueue].iterator()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator].next()"
    - "[com.google.common.cache.LocalCache$ValueIterator].next()"
    - "[com.google.common.cache.LocalCache$KeyIterator].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.ForwardingIterator].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[java.util.concurrent.ArrayBlockingQueue$Itr].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$KeySet$1].next()"
    - "[com.google.common.cache.LocalCache$EntryIterator].next()"
    - "[com.google.common.collect.AbstractBiMap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$Itr].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[com.google.common.collect.Iterables$6$1].next()"
    - "[com.google.common.collect.Iterators$EmptyModifiableIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$2].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[com.google.common.collect.HashBiMap$Itr].next()"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet$1].next()"
    - "[com.google.common.base.AbstractIterator].next()"
    - "[com.google.common.collect.Lists$ReverseList$1].next()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$2].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.TreeMultiset$2].next()"
    - "[com.google.common.collect.LinkedListMultimap$ValueForKeyIterator].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.MapMakerInternalMap$ValueIterator].next()"
    - "[com.google.common.collect.MinMaxPriorityQueue$QueueIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$MapBasedMultisetIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.AbstractMapBasedMultiset$1].next()"
    - "[com.google.common.collect.Multimaps$MapMultimap$1$1].next()"
    - "[com.google.common.collect.ConcurrentHashMultiset$3].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.StandardTable$CellIterator].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ForwardingNavigableMap$StandardDescendingMap$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.TransformedIterator].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Multisets$MultisetIteratorImpl].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[com.google.common.collect.Iterators$PeekingImpl].next()"
    - "[com.google.common.collect.CompactHashMap$Itr].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.LinkedListMultimap$NodeIterator].next()"
    - "[com.google.common.collect.MapMakerInternalMap$EntryIterator].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$ConcatenatedIterator].next()"
    - "[com.google.common.collect.StandardTable$Row$1].next()"
    - "[com.google.common.collect.LinkedHashMultimap$1].next()"
    - "[com.google.common.collect.LinkedListMultimap$DistinctKeyIterator].next()"
    - "[com.google.common.collect.EnumMultiset$Itr].next()"
    - "[com.google.common.collect.MapMakerInternalMap$KeyIterator].next()"
    - "[com.google.common.collect.CompactHashSet$1].next()"
    - "[com.google.common.base.Converter$1$1].next()"
    - "[com.google.common.collect.Iterators$7].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.TreeMultiset$3].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[com.google.inject.internal.aop.Enhancer].enhanceConstructor(org.objectweb.asm.ClassWriter,java.lang.reflect.Constructor)"
    - "[com.google.inject.internal.aop.Enhancer].enhanceMethod(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,int)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[com.google.inject.internal.aop.Enhancer].generateVirtualBridge(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,java.lang.reflect.Method)"
    - "[org.objectweb.asm.ClassWriter].visitEnd()"
    - "[org.objectweb.asm.ClassWriter].toByteArray()"
    - "[java.util.Map].keySet()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Set].iterator()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 516
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:196"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:206"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.Enhancer:205"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "com.google.inject.internal.aop.Enhancer:197"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:200"
        BranchSideFuncs:
        - "enhanceConstructor(org.objectweb.asm.ClassWriter,java.lang.reflect.Constructor)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:199"
        BranchSideFuncs:
        - "enhanceMethod(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,int)"
        - "remove(java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.Enhancer:206"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:213"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "get(java.lang.Object)"
        - "iterator()"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:212"
        BranchSideFuncs:
        - "visitEnd()"
        - "toByteArray()"
    - Branch String: "com.google.inject.internal.aop.Enhancer:208"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:211"
        BranchSideFuncs:
        - "generateVirtualBridge(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,java.lang.reflect.Method)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:176,1"
      Dst: "[org.objectweb.asm.ClassWriter].<init>(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:179,1"
      Dst: "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.Enhancer:180,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:183,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.Enhancer:184,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitEnd()"
    - Src: "com.google.inject.internal.aop.Enhancer:186,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    - Src: "com.google.inject.internal.aop.Enhancer:188,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].generateTrampoline(org.objectweb.asm.ClassWriter,java.util.Collection)"
    - Src: "com.google.inject.internal.aop.Enhancer:193,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "com.google.inject.internal.aop.Enhancer:193,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "com.google.inject.internal.aop.Enhancer:196,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "com.google.inject.internal.aop.Enhancer:196,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.inject.internal.aop.Enhancer:196,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.inject.internal.aop.Enhancer:198,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].enhanceConstructor(org.objectweb.asm.ClassWriter,java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.Enhancer:200,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].enhanceMethod(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:201,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.Enhancer:206,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "com.google.inject.internal.aop.Enhancer:207,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.Enhancer:209,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].generateVirtualBridge(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.Enhancer:213,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitEnd()"
    - Src: "com.google.inject.internal.aop.Enhancer:214,1"
      Dst: "[org.objectweb.asm.ClassWriter].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.aop.Enhancer].setupInvokerTable(org.objectweb.asm.ClassWriter)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitCode()"
    - "[org.objectweb.asm.Handle].<init>(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[com.google.inject.internal.aop.ClassDefining].canLoadProxyByName(java.lang.Class)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    functionUses: 1
    ICount: 29
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:256"
        BranchSideFuncs:
        - "visitLdcInsn(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:219,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.Enhancer:220,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    - Src: "com.google.inject.internal.aop.Enhancer:222,1"
      Dst: "[org.objectweb.asm.Handle].<init>(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:225,1"
      Dst: "[com.google.inject.internal.aop.ClassDefining].canLoadProxyByName(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:228,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:235,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - Src: "com.google.inject.internal.aop.Enhancer:260,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:262,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:263,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:264,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.Enhancer].enhanceMethod(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,int)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 332
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassWriter"
    - "java.lang.reflect.Method"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Method].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].packArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.Class].isPrimitive()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[com.google.inject.internal.aop.BytecodeTasks].unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    functionUses: 1
    ICount: 42
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:318"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:320"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.aop.Enhancer:319"
        BranchSideFuncs:
        - "isPrimitive()"
    - Branch String: "com.google.inject.internal.aop.Enhancer:320"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:325"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
        - "getOpcode(int)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:324"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "getInternalName(java.lang.Class)"
        - "visitTypeInsn(int,java.lang.String)"
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:299,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.Enhancer:300,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.Enhancer:301,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.Enhancer:303,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.aop.Enhancer:298,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.Enhancer:305,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:306,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:307,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:308,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].pushInteger(org.objectweb.asm.MethodVisitor,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:313,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:313,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].packArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.Enhancer:315,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:317,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.aop.Enhancer:320,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.Enhancer:321,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:322,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unbox(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - Src: "com.google.inject.internal.aop.Enhancer:323,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:325,1"
      Dst: "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:325,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:329,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:330,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 422
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Executable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getExceptionTypes()"
    - "[java.lang.reflect.Constructor].getExceptionTypes()"
    - "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].bootstrap$(java.lang.Class[])"
    - "[java.util.Arrays].setAll(java.lang.Object[],java.util.function.IntFunction)"
    - "[java.lang.reflect.Executable].getExceptionTypes()"
    functionUses: 3
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:418,1"
      Dst: "[java.lang.reflect.Executable].getExceptionTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:420,1"
      Dst: "[com.google.inject.internal.aop.Enhancer$lambda_exceptionNames_0__208].bootstrap$(java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.Enhancer:420,1"
      Dst: "[java.util.Arrays].setAll(java.lang.Object[],java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer].generateVirtualBridge(org.objectweb.asm.ClassWriter,java.lang.reflect.Method,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 410
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassWriter"
    - "java.lang.reflect.Method"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Method].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[org.objectweb.asm.Type].getInternalName()"
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    functionUses: 1
    ICount: 46
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:388"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:398"
        BranchSideFuncs:
        - "loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:397"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "getMethodDescriptor(java.lang.reflect.Method)"
        - "getName()"
        - "getReturnType()"
    - Branch String: "com.google.inject.internal.aop.Enhancer:391"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:374"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "visitVarInsn(int,int)"
        - "getModifiers()"
        - "exceptionNames(java.lang.reflect.Executable)"
    - Branch String: "com.google.inject.internal.aop.Enhancer:401"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:404"
        BranchSideFuncs:
        - "visitEnd()"
        - "visitMaxs(int,int)"
        - "visitInsn(int)"
        - "getOpcode(int)"
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:375,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "com.google.inject.internal.aop.Enhancer:376,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.Enhancer:377,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.Enhancer:379,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.aop.Enhancer:374,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.Enhancer:381,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:382,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:384,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:390,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:393,1"
      Dst: "[org.objectweb.asm.Type].getInternalName(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:397,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:400,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.aop.Enhancer:400,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:403,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "com.google.inject.internal.aop.Enhancer:405,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:405,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:407,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:408,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.aop.Enhancer].enhanceConstructor(org.objectweb.asm.ClassWriter,java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 294
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.ClassWriter"
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    - "[java.lang.String].substring(int)"
    - "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 30
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:284"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:287"
        BranchSideFuncs:
        - "visitEnd()"
        - "visitMaxs(int,int)"
        - "visitInsn(int)"
        - "visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:269,1"
      Dst: "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.Enhancer:270,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:270,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:273,1"
      Dst: "[com.google.inject.internal.aop.Enhancer].exceptionNames(java.lang.reflect.Executable)"
    - Src: "com.google.inject.internal.aop.Enhancer:273,1"
      Dst: "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "com.google.inject.internal.aop.Enhancer:275,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    - Src: "com.google.inject.internal.aop.Enhancer:277,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:278,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:281,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:284,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:285,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].loadArgument(org.objectweb.asm.MethodVisitor,java.lang.Class,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:288,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:291,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:292,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.Enhancer].generateConstructorInvoker(org.objectweb.asm.MethodVisitor,java.lang.reflect.Constructor<?>)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 347
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.reflect.Constructor<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    - "[java.lang.String].substring(int)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:335,1"
      Dst: "[org.objectweb.asm.Type].getConstructorDescriptor(java.lang.reflect.Constructor)"
    - Src: "com.google.inject.internal.aop.Enhancer:336,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:336,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:338,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:339,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:341,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:343,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:343,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.Enhancer:345,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.Enhancer].generateMethodInvoker(org.objectweb.asm.MethodVisitor,java.lang.reflect.Method)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 370
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Maps$AsMapView].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.LinkedHashMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[java.lang.Class].isPrimitive()"
    - "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 1
    ICount: 29
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "com.google.inject.internal.aop.Enhancer:354"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:349"
        BranchSideFuncs:
        - "getOrDefault(java.lang.Object,java.lang.Object)"
    - Branch String: "com.google.inject.internal.aop.Enhancer:364"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:366"
        BranchSideFuncs:
        - "visitInsn(int)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:365"
        BranchSideFuncs:
        - "isPrimitive()"
    - Branch String: "com.google.inject.internal.aop.Enhancer:366"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.aop.Enhancer:369"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
      - BranchSide: "com.google.inject.internal.aop.Enhancer:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:350,1"
      Dst: "[java.util.Map].getOrDefault(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.aop.Enhancer:356,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - Src: "com.google.inject.internal.aop.Enhancer:357,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:358,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "com.google.inject.internal.aop.Enhancer:358,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].unpackArguments(org.objectweb.asm.MethodVisitor,java.lang.Class[])"
    - Src: "com.google.inject.internal.aop.Enhancer:361,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.inject.internal.aop.Enhancer:361,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "com.google.inject.internal.aop.Enhancer:360,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "com.google.inject.internal.aop.Enhancer:363,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "com.google.inject.internal.aop.Enhancer:365,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "com.google.inject.internal.aop.Enhancer:366,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "com.google.inject.internal.aop.Enhancer:367,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "com.google.inject.internal.aop.Enhancer:367,1"
      Dst: "[com.google.inject.internal.aop.BytecodeTasks].box(org.objectweb.asm.MethodVisitor,org.objectweb.asm.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.internal.aop.Enhancer].lookupInvokerTable(java.lang.Class<?>)"
    functionSourceFile: "com.google.inject.internal.aop.Enhancer"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionDepth: 0
    returnType: "java.lang.invoke.MethodHandle"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[java.lang.Class].getField(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.Enhancer:413,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "com.google.inject.internal.aop.Enhancer:413,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StackFrameInfo].toStackTraceElement()"
    - "[java.lang.StackWalker$StackFrame].toStackTraceElement()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.DirectStackWalkerFinder$toStackTraceElement__156:-1,1"
      Dst: "[java.lang.StackWalker$StackFrame].toStackTraceElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.GuiceInternal].<init>()"
    functionSourceFile: "com.google.inject.internal.GuiceInternal"
    linkageType: ""
    functionLinenumber: 12
    functionLinenumberEnd: 14
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.GuiceInternal:13,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].getPermits(com.google.inject.spi.ElementSource)"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "com.google.common.collect.ImmutableSet"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ElementSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.MapMakerInternalMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].get(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].get(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap$Inverse].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.DenseImmutableTable$ImmutableArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$NavigableAsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].get(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].get(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedAsMap].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableBiMap].get(java.lang.Object)"
    - "[com.google.common.collect.ImmutableSortedMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].get(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].get(java.lang.Object)"
    - "[com.google.common.collect.RegularImmutableMap].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].get(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].get(java.lang.Object)"
    - "[com.google.common.collect.JdkBackedImmutableBiMap].get(java.lang.Object)"
    - "[java.util.EnumMap].get(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 48
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl:268,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl].clear()"
    functionSourceFile: "com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$PermitMapImpl"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 275
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163].bootstrap$(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractBindingProcessor$Processor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163:-1,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163].<init>(com.google.inject.internal.AbstractBindingProcessor$Processor,com.google.inject.internal.BindingImpl)"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.AbstractBindingProcessor$Processor"
    - "com.google.inject.internal.BindingImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163].run()"
    functionSourceFile: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.AbstractBindingProcessor$Processor].lambda$scheduleDelayedInitialization$1(com.google.inject.internal.BindingImpl)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.AbstractBindingProcessor$Processor$lambda_scheduleDelayedInitialization_1__163:-1,1"
      Dst: "[com.google.inject.internal.AbstractBindingProcessor$Processor].lambda$scheduleDelayedInitialization$1(com.google.inject.internal.BindingImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].doInitialize()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 405
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - "[com.google.common.base.Optional].absent()"
    - "[com.google.inject.internal.BindingImpl].getProvider()"
    - "[com.google.inject.internal.InjectorImpl$ConvertedConstantBindingImpl].getProvider()"
    - "[com.google.common.base.Optional].of(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:399"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:402"
        BranchSideFuncs:
        - "absent()"
      - BranchSide: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:401"
        BranchSideFuncs:
        - "getProvider()"
        - "getBinding()"
        - "of(java.lang.Object)"
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:399,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].getBinding()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:400,1"
      Dst: "[com.google.common.base.Optional].absent()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:402,1"
      Dst: "[com.google.inject.internal.BindingImpl].getProvider()"
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:402,1"
      Dst: "[com.google.common.base.Optional].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].doProvision(com.google.inject.internal.InternalContext,com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionDepth: 0
    returnType: "com.google.common.base.Optional"
    argCount: 2
    argTypes:
    - "com.google.inject.internal.InternalContext"
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider].getDependencies()"
    functionSourceFile: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealOptionalBinder$BindingSelection].providerDependencies()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.RealOptionalBinder$RealOptionalProviderProvider:413,1"
      Dst: "[com.google.inject.internal.RealOptionalBinder$BindingSelection].providerDependencies()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].<init>(com.google.common.reflect.Invokable,int,com.google.common.reflect.TypeToken,java.lang.'annotation'.Annotation[],java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "com.google.common.reflect.Invokable"
    - "int"
    - "com.google.common.reflect.TypeToken"
    - "java.lang.annotation.Annotation[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "com.google.common.reflect.Parameter:60,1"
      Dst: "[com.google.common.collect.ImmutableList].copyOf(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getType()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.reflect.TypeToken"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getDeclaringInvokable()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.common.reflect.Invokable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].isAnnotationPresent(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Parameter].getAnnotation(java.lang.Class)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Parameter:76"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:75"
        BranchSideFuncs:
        - "getAnnotation(java.lang.Class)"
    Callsites:
    - Src: "com.google.common.reflect.Parameter:76,1"
      Dst: "[com.google.common.reflect.Parameter].getAnnotation(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Parameter].getAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$2].hasNext()"
    - "[com.google.common.graph.MapIteratorCache$1$1].hasNext()"
    - "[com.google.common.collect.Iterators$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultimap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMap$1].hasNext()"
    - "[com.google.common.collect.ImmutableMultiset$1].hasNext()"
    - "[com.google.common.collect.Iterators$8].hasNext()"
    - "[com.google.common.collect.Iterators$9].hasNext()"
    - "[com.google.common.collect.AbstractIterator].hasNext()"
    - "[com.google.common.collect.Iterators$SingletonIterator].hasNext()"
    - "[com.google.common.collect.Iterators$4].hasNext()"
    - "[com.google.common.collect.Maps$8].hasNext()"
    - "[com.google.common.collect.Iterators$MergingIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMapValues$1].hasNext()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].hasNext()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].hasNext()"
    - "[com.google.common.collect.Iterators$3].hasNext()"
    - "[com.google.common.collect.SingletonImmutableList].iterator()"
    - "[com.google.common.collect.ImmutableList].iterator()"
    - "[com.google.common.collect.Iterators$SingletonIterator].next()"
    - "[com.google.common.collect.Iterators$9].next()"
    - "[com.google.common.collect.AbstractIterator].next()"
    - "[com.google.common.collect.Iterators$8].next()"
    - "[com.google.common.graph.MapIteratorCache$1$1].next()"
    - "[com.google.common.collect.Iterators$3].next()"
    - "[com.google.common.collect.ImmutableMap$1].next()"
    - "[com.google.common.collect.Iterators$4].next()"
    - "[com.google.common.collect.AbstractSequentialIterator].next()"
    - "[com.google.common.collect.ImmutableMultiset$1].next()"
    - "[com.google.common.collect.ImmutableMultimap$2].next()"
    - "[com.google.common.collect.Iterators$MergingIterator].next()"
    - "[com.google.common.collect.ImmutableMultimap$1].next()"
    - "[com.google.common.collect.TreeTraverser$PreOrderIterator].next()"
    - "[com.google.common.collect.TreeTraverser$BreadthFirstIterator].next()"
    - "[com.google.common.collect.Maps$8].next()"
    - "[com.google.common.collect.Iterators$1].next()"
    - "[com.google.common.collect.ImmutableMapValues$1].next()"
    - "[com.google.common.collect.AbstractIndexedListIterator].next()"
    - "[com.google.common.collect.Sets$SubSet$1].next()"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets$1].next()"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[java.lang.Class].cast(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 16
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Parameter:83"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:88"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isInstance(java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Parameter:87"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Parameter:84"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:87"
        BranchSideFuncs:
        - "cast(java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Parameter:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:82,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Parameter:83,1"
      Dst: "[com.google.common.collect.ImmutableList].iterator()"
    - Src: "com.google.common.reflect.Parameter:83,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "com.google.common.reflect.Parameter:83,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "com.google.common.reflect.Parameter:84,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "com.google.common.reflect.Parameter:85,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Parameter].getAnnotations()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Parameter].getDeclaredAnnotations()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:93,1"
      Dst: "[com.google.common.reflect.Parameter].getDeclaredAnnotations()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getDeclaredAnnotations()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:107,1"
      Dst: "[com.google.common.collect.ImmutableCollection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getAnnotationsByType(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Parameter].getDeclaredAnnotationsByType(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:101,1"
      Dst: "[com.google.common.reflect.Parameter].getDeclaredAnnotationsByType(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getDeclaredAnnotationsByType(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.FluentIterable].'from'(java.lang.Iterable)"
    - "[com.google.common.collect.FluentIterable].filter(java.lang.Class)"
    - "[com.google.common.collect.FluentIterable].toArray(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:126,1"
      Dst: "[com.google.common.collect.FluentIterable].'from'(java.lang.Iterable)"
    - Src: "com.google.common.reflect.Parameter:126,1"
      Dst: "[com.google.common.collect.FluentIterable].filter(java.lang.Class)"
    - Src: "com.google.common.reflect.Parameter:126,1"
      Dst: "[com.google.common.collect.FluentIterable].toArray(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getDeclaredAnnotation(java.lang.Class)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.annotation.Annotation"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - "[com.google.common.collect.FluentIterable].'from'(java.lang.Iterable)"
    - "[com.google.common.collect.FluentIterable].filter(java.lang.Class)"
    - "[com.google.common.collect.FluentIterable].first()"
    - "[com.google.common.base.Optional].orNull()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:116,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Parameter:117,1"
      Dst: "[com.google.common.collect.FluentIterable].'from'(java.lang.Iterable)"
    - Src: "com.google.common.reflect.Parameter:117,1"
      Dst: "[com.google.common.collect.FluentIterable].filter(java.lang.Class)"
    - Src: "com.google.common.reflect.Parameter:117,1"
      Dst: "[com.google.common.collect.FluentIterable].first()"
    - Src: "com.google.common.reflect.Parameter:117,1"
      Dst: "[com.google.common.base.Optional].orNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].getAnnotatedType()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.AnnotatedType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:139,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    functionUses: 56
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Parameter:144"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:148"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Parameter:147"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Parameter:146"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:144"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "com.google.common.reflect.Parameter:146"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Parameter:144"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "com.google.common.reflect.Parameter:146,1"
      Dst: "[com.google.common.reflect.Invokable].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Parameter].hashCode()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Parameter].toString()"
    functionSourceFile: "com.google.common.reflect.Parameter"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Parameter:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.common.reflect.Parameter:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "com.google.common.reflect.Parameter:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.common.reflect.Parameter:158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "com.google.common.reflect.Parameter:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$3"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].getRawType()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.TypeConverterBindingProcessor$3:93"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.TypeConverterBindingProcessor$3:92"
        BranchSideFuncs:
        - "getRawType()"
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$3:93,1"
      Dst: "[com.google.inject.TypeLiteral].getRawType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$3].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$3"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$3"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(com.google.inject.TypeLiteral)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$3:90,1"
      Dst: "[com.google.inject.internal.TypeConverterBindingProcessor$3].matches(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$1].visit(com.google.inject.Binding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$1"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.Binding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[com.google.inject.internal.BindingImpl].getKey()"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.Binding)"
    - "[com.google.inject.Binding].getKey()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$1:254,1"
      Dst: "[com.google.inject.Binding].getKey()"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:254,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:255,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$1].visit(com.google.inject.spi.ScopeBinding)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$1"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionDepth: 1
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ScopeBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$1:260,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:260,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:261,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.ScopeBinding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Modules$OverrideModule$1].visit(com.google.inject.spi.PrivateElements)"
    functionSourceFile: "com.google.inject.util.Modules$OverrideModule$1"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.PrivateElements"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.Sets$SetView].addAll(java.util.Collection)"
    - "[com.google.common.collect.Maps$6].addAll(java.util.Collection)"
    - "[java.util.TreeSet].addAll(java.util.Collection)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].addAll(java.util.Collection)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Collections2$FilteredCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Maps$5].addAll(java.util.Collection)"
    - "[com.google.common.collect.ForwardingCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.ImmutableCollection].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].addAll(java.util.Collection)"
    - "[com.google.common.collect.Maps$4].addAll(java.util.Collection)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].addAll(java.util.Collection)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArraySet].addAll(java.util.Collection)"
    - "[com.google.inject.internal.PrivateElementsImpl].getExposedKeys()"
    - "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.PrivateElements)"
    - "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 8
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Modules$OverrideModule$1:266,1"
      Dst: "[com.google.inject.spi.PrivateElements].getExposedKeys()"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:266,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "com.google.inject.util.Modules$OverrideModule$1:267,1"
      Dst: "[com.google.inject.spi.DefaultElementVisitor].visit(com.google.inject.spi.PrivateElements)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationError$getSources__147].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationError$getSources__147"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ErrorDetail].getSources()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationError$getSources__147:-1,1"
      Dst: "[com.google.inject.spi.ErrorDetail].getSources()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.ScopeBindingProcessor].visit(com.google.inject.spi.ScopeBinding)"
    functionSourceFile: "com.google.inject.internal.ScopeBindingProcessor"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 63
    functionDepth: 2
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ScopeBinding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.spi.ScopeBinding].getScope()"
    - "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - "[com.google.inject.internal.Annotations].isScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Errors].missingScopeAnnotation(java.lang.Class)"
    - "[com.google.inject.internal.Annotations].isRetainedAtRuntime(java.lang.Class)"
    - "[com.google.inject.internal.Errors].missingRuntimeRetention(java.lang.Class)"
    - "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - "[com.google.inject.internal.InjectorBindingData].getScopeBinding(java.lang.Class)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.inject.internal.Errors].duplicateScopes(com.google.inject.spi.ScopeBinding,java.lang.Class,com.google.inject.Scope)"
    - "[com.google.inject.internal.InjectorBindingData].putScopeBinding(java.lang.Class,com.google.inject.spi.ScopeBinding)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 1
    ICount: 31
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "com.google.inject.internal.ScopeBindingProcessor:43"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:48"
        BranchSideFuncs:
        - "missingScopeAnnotation(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:47"
        BranchSideFuncs:
        - "isRetainedAtRuntime(java.lang.Class)"
    - Branch String: "com.google.inject.internal.ScopeBindingProcessor:48"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:53"
        BranchSideFuncs:
        - "missingRuntimeRetention(java.lang.Class)"
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:52"
        BranchSideFuncs:
        - "getScopeBinding(java.lang.Class)"
    - Branch String: "com.google.inject.internal.ScopeBindingProcessor:54"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:59"
        BranchSideFuncs:
        - "getScope()"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:58"
        BranchSideFuncs:
        - "putScopeBinding(java.lang.Class,com.google.inject.spi.ScopeBinding)"
        - "getBindingData()"
    - Branch String: "com.google.inject.internal.ScopeBindingProcessor:55"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:62"
        BranchSideFuncs:
        - "duplicateScopes(com.google.inject.spi.ScopeBinding,java.lang.Class,com.google.inject.Scope)"
      - BranchSide: "com.google.inject.internal.ScopeBindingProcessor:61"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "com.google.inject.internal.ScopeBindingProcessor:39,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getScope()"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:39,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:41,1"
      Dst: "[com.google.inject.spi.ScopeBinding].getAnnotationType()"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:43,1"
      Dst: "[com.google.inject.internal.Annotations].isScopeAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:44,1"
      Dst: "[com.google.inject.internal.Errors].missingScopeAnnotation(java.lang.Class)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:48,1"
      Dst: "[com.google.inject.internal.Annotations].isRetainedAtRuntime(java.lang.Class)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:49,1"
      Dst: "[com.google.inject.internal.Errors].missingRuntimeRetention(java.lang.Class)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:53,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBindingData()"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:53,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].getScopeBinding(java.lang.Class)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:55,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:56,1"
      Dst: "[com.google.inject.internal.Errors].duplicateScopes(com.google.inject.spi.ScopeBinding,java.lang.Class,com.google.inject.Scope)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:59,1"
      Dst: "[com.google.inject.internal.InjectorBindingData].putScopeBinding(java.lang.Class,com.google.inject.spi.ScopeBinding)"
    - Src: "com.google.inject.internal.ScopeBindingProcessor:62,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[jdk.internal.reflect.ClassDefiner$1].run()"
    functionSourceFile: "jdk.internal.reflect.ClassDefiner$1"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.DelegatingClassLoader].<init>(java.lang.ClassLoader)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ClassDefiner$1:60,1"
      Dst: "[jdk.internal.reflect.DelegatingClassLoader].<init>(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].addModules(java.lang.Iterable<?\
      \ extends Module>)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "com.google.inject.internal.InternalInjectorCreator"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Module>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorShell$Builder].addModules(java.lang.Iterable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:95,1"
      Dst: "[com.google.inject.internal.InjectorShell$Builder].addModules(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator].isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl<?>,com.google.inject.Stage)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 239
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "com.google.inject.internal.InjectorImpl"
    - "com.google.inject.internal.BindingImpl<?>"
    - "com.google.inject.Stage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingImpl].getScoping()"
    - "[com.google.inject.internal.Scoping].isEagerSingleton(com.google.inject.Stage)"
    - "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - "[com.google.inject.internal.Scoping].isNoScope()"
    - "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InternalInjectorCreator].isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
    functionUses: 2
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:225"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:232"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:231"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:232"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:238"
        BranchSideFuncs:
        - "getLinkedKey()"
        - "getScoping()"
        - "isNoScope()"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:237"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:234"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:233"
        BranchSideFuncs:
        - "isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
        - "getBinding(com.google.inject.Key)"
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:232"
        BranchSideFuncs:
        - "getLinkedKey()"
        - "getScoping()"
        - "isNoScope()"
    - Branch String: "com.google.inject.internal.InternalInjectorCreator:235"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.InternalInjectorCreator:232"
        BranchSideFuncs:
        - "getLinkedKey()"
        - "getScoping()"
        - "isNoScope()"
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator:225,1"
      Dst: "[com.google.inject.internal.BindingImpl].getScoping()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:225,1"
      Dst: "[com.google.inject.internal.Scoping].isEagerSingleton(com.google.inject.Stage)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:233,1"
      Dst: "[com.google.inject.internal.LinkedBindingImpl].getLinkedKey()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:234,1"
      Dst: "[com.google.inject.internal.Scoping].isNoScope()"
    - Src: "com.google.inject.internal.InternalInjectorCreator:235,1"
      Dst: "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - Src: "com.google.inject.internal.InternalInjectorCreator:235,1"
      Dst: "[com.google.inject.internal.InternalInjectorCreator].isEagerSingleton(com.google.inject.internal.InjectorImpl,com.google.inject.internal.BindingImpl,com.google.inject.Stage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types$TypeVariableInvocationHandler].invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])"
    functionSourceFile: "com.google.common.reflect.Types$TypeVariableInvocationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Method"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$TypeVariableInvocationHandler:390"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$TypeVariableInvocationHandler:394"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$TypeVariableInvocationHandler:393"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:388,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:389,1"
      Dst: "[com.google.common.collect.ImmutableMap].get(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:391,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:394,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.common.reflect.Types$TypeVariableInvocationHandler:396,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner$1].annotationClasses()"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableSet].of()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MultibindingsScanner$1:65,1"
      Dst: "[com.google.common.collect.ImmutableSet].of()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MultibindingsScanner$1].prepareMethod(com.google.inject.Binder,java.lang.'annotation'.Annotation,com.google.inject.Key,com.google.inject.spi.InjectionPoint)"
    functionSourceFile: "com.google.inject.multibindings.MultibindingsScanner$1"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "com.google.inject.Key"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.annotation.Annotation"
    - "com.google.inject.Key"
    - "com.google.inject.spi.InjectionPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MultibindingsScanner$1:71,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.multibindings.MultibindingsScanner$1:71,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.BindingAlreadySetError$of__143].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.BindingAlreadySetError$of__143"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.BindingAlreadySetError$of__143:-1,1"
      Dst: "[com.google.common.collect.ImmutableList].of(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$5].convert(java.lang.String,com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$5"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[com.google.inject.CreationException].getMessage()"
    - "[com.google.inject.ProvisionException].getMessage()"
    - "[org.aopalliance.aop.AspectException].getMessage()"
    - "[com.google.common.util.concurrent.CycleDetectingLockFactory$PotentialDeadlockException].getMessage()"
    - "[com.google.inject.ConfigurationException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 1
    ICount: 19
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:129,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:131,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:133,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:133,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:133,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.TypeConverterBindingProcessor$5].toString()"
    functionSourceFile: "com.google.inject.internal.TypeConverterBindingProcessor$5"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 19
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:139,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "com.google.inject.internal.TypeConverterBindingProcessor$5:139,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionDepth: 2
    returnType: "java.lang.reflect.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:274,1"
      Dst: "[com.google.common.reflect.Types].access$300(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].toString()"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 300
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[com.google.common.reflect.Types$JavaVersion].jdkTypeDuplicatesOwnerName()"
    - "[com.google.common.reflect.Types$JavaVersion$4].jdkTypeDuplicatesOwnerName()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[com.google.common.reflect.Types$JavaVersion$3].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    - "[com.google.common.reflect.Types$JavaVersion$4].typeName(java.lang.reflect.Type)"
    - "[java.lang.Class].getName()"
    - "[com.google.common.reflect.Types].access$400()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].bootstrap$(com.google.common.reflect.Types$JavaVersion)"
    - "[com.google.common.base.Joiner].join(java.lang.Iterable)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[com.google.common.collect.Iterables].transform(java.lang.Iterable,com.google.common.base.Function)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 22
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:291"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:null"
        BranchSideFuncs:
        - "typeName(java.lang.reflect.Type)"
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:291"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:null"
        BranchSideFuncs:
        - "typeName(java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:290,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:291,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].jdkTypeDuplicatesOwnerName()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:292,1"
      Dst: "[com.google.common.reflect.Types$JavaVersion].typeName(java.lang.reflect.Type)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:292,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:292,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:295,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:297,1"
      Dst: "[com.google.common.reflect.Types].access$400()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:297,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:297,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl$typeName__13].bootstrap$(com.google.common.reflect.Types$JavaVersion)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:297,1"
      Dst: "[com.google.common.collect.Iterables].transform(java.lang.Iterable,com.google.common.base.Function)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:297,1"
      Dst: "[com.google.common.base.Joiner].join(java.lang.Iterable)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:299,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[com.google.common.collect.ImmutableList].hashCode()"
    functionUses: 42
    ICount: 14
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:304"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:304,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:305,1"
      Dst: "[com.google.common.collect.ImmutableList].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.common.reflect.Types$ParameterizedTypeImpl"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 318
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].equals(java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getRawType()"
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getOwnerType()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    - "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    functionUses: 63
    ICount: 22
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:311"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:314"
        BranchSideFuncs: []
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:313"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "getRawType()"
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:315"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:-1"
        BranchSideFuncs:
        - "getOwnerType()"
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:316"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
        - "getActualTypeArguments()"
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:-2"
        BranchSideFuncs: []
    - Branch String: "com.google.common.reflect.Types$ParameterizedTypeImpl:317"
      Branch Sides:
      - BranchSide: "com.google.common.reflect.Types$ParameterizedTypeImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:315,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getRawType()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:315,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:315,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:316,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getOwnerType()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:316,1"
      Dst: "[java.lang.reflect.ParameterizedType].getOwnerType()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:316,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:317,1"
      Dst: "[com.google.common.reflect.Types$ParameterizedTypeImpl].getActualTypeArguments()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:317,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "com.google.common.reflect.Types$ParameterizedTypeImpl:317,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[com.google.inject.spi.InjectionPoint$Position].values()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Position"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint$Position[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$Position:580,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Position].valueOf(java.lang.String)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Position"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint$Position"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$Position:580,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Position].<init>(java.lang.String,int)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Position"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$Position:580,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$Position].$values()"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$Position"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "com.google.inject.spi.InjectionPoint$Position[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.NewThrowableFinder].<init>()"
    functionSourceFile: "com.google.inject.internal.util.NewThrowableFinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.NewThrowableFinder:6,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.NewThrowableFinder].findCaller(java.util.function.Predicate<String>)"
    functionSourceFile: "com.google.inject.internal.util.NewThrowableFinder"
    linkageType: ""
    functionLinenumber: 8
    functionLinenumberEnd: 17
    functionDepth: 0
    returnType: "java.lang.StackTraceElement"
    argCount: 1
    argTypes:
    - "java.util.function.Predicate<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].<init>()"
    - "[java.lang.Throwable].getStackTrace()"
    - "[java.lang.StackTraceElement].getClassName()"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_isExempt_1__56].test(java.lang.Object)"
    - "[com.google.inject.internal.KotlinSupport$KotlinUnsupported$lambda_static_0__121].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$contains__54].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingSequentialList$lambda_removeIf_0__33].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_0__118].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$isInjectableConstructor__117].test(java.lang.Object)"
    - "[jdk.internal.logger.SimpleConsoleLogger$CallerFinder].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_trimSource_3__162].test(java.lang.Object)"
    - "[com.google.inject.internal.DuplicateElementError$lambda_formatDetail_1__140].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$TransformedCollection$lambda_removeIf_1__70].test(java.lang.Object)"
    - "[com.google.common.base.Predicate].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_formatDetail_2__149].test(java.lang.Object)"
    - "[com.google.common.collect.Lists$TransformingRandomAccessList$lambda_removeIf_0__34].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$lambda_getPermits_2__52].test(java.lang.Object)"
    - "[com.google.inject.internal.ChildBindingAlreadySetError$lambda_formatDetail_2__153].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$3$lambda_stream_0__28].test(java.lang.Object)"
    - "[com.google.inject.internal.AbstractProcessor$lambda_process_0__18].test(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection$lambda_removeIf_2__69].test(java.lang.Object)"
    - "[com.google.inject.spi.BindingSourceRestriction$PermitMapConstruction$lambda_pushModule_0__50].test(java.lang.Object)"
    - "[com.google.inject.internal.util.SourceProvider$shouldBeSkipped__115].test(java.lang.Object)"
    - "[com.google.inject.spi.InjectionPoint$lambda_forConstructorOf_1__119].test(java.lang.Object)"
    - "[com.google.inject.internal.MissingImplementationError$lambda_trimSource_3__161].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$2$contains__29].test(java.lang.Object)"
    - "[com.google.common.collect.Sets$1$lambda_stream_0__27].test(java.lang.Object)"
    - "[com.google.inject.internal.Messages$isMergeable__63].test(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.function.Predicate].test(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.NewThrowableFinder:10"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.NewThrowableFinder:16"
        BranchSideFuncs:
        - "getClassName()"
        - "test(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.NewThrowableFinder:15"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "com.google.inject.internal.util.NewThrowableFinder:12"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.NewThrowableFinder:9"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.internal.util.NewThrowableFinder:8"
        BranchSideFuncs:
        - "getStackTrace()"
    Callsites:
    - Src: "com.google.inject.internal.util.NewThrowableFinder:9,1"
      Dst: "[java.lang.Throwable].<init>()"
    - Src: "com.google.inject.internal.util.NewThrowableFinder:9,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "com.google.inject.internal.util.NewThrowableFinder:11,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "com.google.inject.internal.util.NewThrowableFinder:12,1"
      Dst: "[java.util.function.Predicate].test(java.lang.Object)"
    - Src: "com.google.inject.internal.util.NewThrowableFinder:16,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203].bootstrap$()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.PrivilegedExceptionAction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203].run()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder].lambda$static$0()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder$lambda_static_0__203:-1,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder].lambda$static$0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder].lambda$static$0()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.internal.aop.ClassDefiner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.UnsafeClassDefiner].accessDefineClass(java.lang.Class)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder:88,1"
      Dst: "[com.google.inject.internal.aop.UnsafeClassDefiner].accessDefineClass(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.common.reflect.Types$JavaVersion$5].<init>()"
    functionSourceFile: "com.google.common.reflect.Types$JavaVersion$5"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.TypeCapture].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.common.reflect.Types$JavaVersion$5:636,1"
      Dst: "[com.google.common.reflect.TypeCapture].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder].<init>()"
    functionSourceFile: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.UnsafeClassDefiner$ClassLoaderDefineClassHolder:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bindInterceptor(com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 292
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.matcher.Matcher"
    - "org.aopalliance.intercept.MethodInterceptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.InterceptorBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:290,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:290,1"
      Dst: "[com.google.inject.spi.InterceptorBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.matcher.Matcher,org.aopalliance.intercept.MethodInterceptor[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:289,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bindScope(java.lang.Class,com.google.inject.Scope)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 297
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "com.google.inject.Scope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ScopeBinding].<init>(java.lang.Object,java.lang.Class,com.google.inject.Scope)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:295,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:295,1"
      Dst: "[com.google.inject.spi.ScopeBinding].<init>(java.lang.Object,java.lang.Class,com.google.inject.Scope)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:295,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requestInjection(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:301,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:302,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:302,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:302,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requestInjection(com.google.inject.TypeLiteral,java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.TypeLiteral"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.InjectionRequest].<init>(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:307,1"
      Dst: "[com.google.common.base.Preconditions].checkNotNull(java.lang.Object,java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:310,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:310,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:310,1"
      Dst: "[com.google.inject.spi.InjectionRequest].<init>(java.lang.Object,com.google.inject.TypeLiteral,java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:308,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getMembersInjector(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 320
    functionDepth: 4
    returnType: "com.google.inject.MembersInjector"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.MembersInjectorLookup].<init>(java.lang.Object,com.google.inject.TypeLiteral)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.MembersInjectorLookup].getMembersInjector()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:317,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:317,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeForKey(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:317,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].<init>(java.lang.Object,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:318,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:319,1"
      Dst: "[com.google.inject.spi.MembersInjectorLookup].getMembersInjector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getMembersInjector(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.MembersInjector"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getMembersInjector(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:324,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:324,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getMembersInjector(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeListener)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.spi.TypeListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.TypeListenerBinding].<init>(java.lang.Object,com.google.inject.spi.TypeListener,com.google.inject.matcher.Matcher)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:329,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:329,1"
      Dst: "[com.google.inject.spi.TypeListenerBinding].<init>(java.lang.Object,com.google.inject.spi.TypeListener,com.google.inject.matcher.Matcher)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:329,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bindListener(com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.spi.ProvisionListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProvisionListenerBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:335,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:335,1"
      Dst: "[com.google.inject.spi.ProvisionListenerBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.ProvisionListener[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:335,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requestStaticInjection(java.lang.Class[])"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 344
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.StaticInjectionRequest].<init>(java.lang.Object,java.lang.Class)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:340"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:341,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:341,1"
      Dst: "[com.google.inject.spi.StaticInjectionRequest].<init>(java.lang.Object,java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:341,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].currentStage()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 478
    functionLinenumberEnd: 480
    functionDepth: 0
    returnType: "com.google.inject.Stage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].addError(com.google.inject.spi.Message)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 497
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:495,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 499
    functionLinenumberEnd: 503
    functionDepth: 4
    returnType: "com.google.inject.binder.AnnotatedBindingBuilder"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.BindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    functionUses: 31
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:501,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:501,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:501,1"
      Dst: "[com.google.inject.internal.BindingBuilder].<init>(com.google.inject.Binder,java.util.List,java.lang.Object,com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.binder.AnnotatedBindingBuilder"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:507,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:507,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bind(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.binder.AnnotatedBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:512,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:512,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].bind(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].bindConstant()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "com.google.inject.binder.AnnotatedConstantBindingBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.inject.internal.ConstantBindingBuilderImpl].<init>(com.google.inject.Binder,java.util.List,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:517,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:517,1"
      Dst: "[com.google.inject.internal.ConstantBindingBuilderImpl].<init>(com.google.inject.Binder,java.util.List,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.spi.Dependency)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:522,1"
      Dst: "[com.google.inject.spi.Dependency].get(com.google.inject.Key)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:522,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.spi.Dependency)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.spi.Dependency)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 530
    functionDepth: 4
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.Dependency"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.spi.Dependency)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.ProviderLookup].getProvider()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:527,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:527,1"
      Dst: "[com.google.inject.spi.ProviderLookup].<init>(java.lang.Object,com.google.inject.spi.Dependency)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:528,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:529,1"
      Dst: "[com.google.inject.spi.ProviderLookup].getProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].getProvider(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:534,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:534,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getProvider(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].convertToTypes(com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 539
    functionLinenumberEnd: 542
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.inject.matcher.Matcher"
    - "com.google.inject.spi.TypeConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:540,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:540,1"
      Dst: "[com.google.inject.spi.TypeConverterBinding].<init>(java.lang.Object,com.google.inject.matcher.Matcher,com.google.inject.spi.TypeConverter)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:540,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].withSource(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 544
    functionLinenumberEnd: 548
    functionDepth: 1
    returnType: "com.google.inject.spi.Elements$RecordingBinder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    functionUses: 26
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:545"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:547"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:546"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:547,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].skipSources(java.lang.Class[])"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 567
    functionDepth: 4
    returnType: "com.google.inject.spi.Elements$RecordingBinder"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.SourceProvider].plusSkippedClasses(java.lang.Class[])"
    - "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:561"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:565"
        BranchSideFuncs: []
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:564"
        BranchSideFuncs:
        - "<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
        - "plusSkippedClasses(java.lang.Class[])"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:565,1"
      Dst: "[com.google.inject.internal.util.SourceProvider].plusSkippedClasses(java.lang.Class[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:566,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].<init>(com.google.inject.spi.Elements$RecordingBinder,java.lang.Object,com.google.inject.internal.util.SourceProvider,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].disableCircularProxies()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.DisableCircularProxiesOption].<init>(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:584,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:584,1"
      Dst: "[com.google.inject.spi.DisableCircularProxiesOption].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:584,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requireExplicitBindings()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 588
    functionLinenumberEnd: 591
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireExplicitBindingsOption].<init>(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:589,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:589,1"
      Dst: "[com.google.inject.spi.RequireExplicitBindingsOption].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:589,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requireAtInjectOnConstructors()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 596
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].<init>(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:594,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:594,1"
      Dst: "[com.google.inject.spi.RequireAtInjectOnConstructorsOption].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:594,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].requireExactBindingAnnotations()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 601
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.RequireExactBindingAnnotationsOption].<init>(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:599,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:599,1"
      Dst: "[com.google.inject.spi.RequireExactBindingAnnotationsOption].<init>(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:599,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].scanModulesForAnnotatedMethods(com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 614
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.spi.ModuleAnnotatedMethodScanner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.common.collect.LinkedHashMultimap$ValueSet].add(java.lang.Object)"
    - "[com.google.common.collect.ForwardingCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$6].add(java.lang.Object)"
    - "[com.google.common.collect.Collections2$FilteredCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$4].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[com.google.common.collect.Sets$SetView].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[com.google.common.collect.ImmutableCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArraySet].add(java.lang.Object)"
    - "[com.google.common.collect.Maps$5].add(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection].add(java.lang.Object)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingSet].add(java.lang.Object)"
    - "[com.google.common.collect.CompactHashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].<init>(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - "[com.google.common.collect.FilteredKeyMultimap$AddRejectingList].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:604"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:611"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:610"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
        - "getElementSource()"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:604,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].moduleScanning()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:605,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:611,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:612,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:612,1"
      Dst: "[com.google.inject.spi.ModuleAnnotatedMethodScannerBinding].<init>(java.lang.Object,com.google.inject.spi.ModuleAnnotatedMethodScanner)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:612,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].expose(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 616
    functionLinenumberEnd: 619
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:617,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 649
    functionDepth: 9
    returnType: "com.google.inject.binder.AnnotatedElementBuilder"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - "[com.google.inject.spi.Elements$RecordingBinder$1].<init>(com.google.inject.spi.Elements$RecordingBinder)"
    - "[com.google.inject.internal.ExposureBuilder].<init>(com.google.inject.Binder,java.lang.Object,com.google.inject.Key)"
    - "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - "[com.google.inject.internal.PrivateElementsImpl].addExposureBuilder(com.google.inject.internal.ExposureBuilder)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "com.google.inject.spi.Elements$RecordingBinder:631"
      Branch Sides:
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:645"
        BranchSideFuncs:
        - "addError(java.lang.String,java.lang.Object[])"
        - "<init>(com.google.inject.spi.Elements$RecordingBinder)"
      - BranchSide: "com.google.inject.spi.Elements$RecordingBinder:644"
        BranchSideFuncs:
        - "addExposureBuilder(com.google.inject.internal.ExposureBuilder)"
        - "<init>(com.google.inject.Binder,java.lang.Object,com.google.inject.Key)"
        - "getElementSource()"
        - "canonicalizeKey(com.google.inject.Key)"
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:632,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].addError(java.lang.String,java.lang.Object[])"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:636,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder$1].<init>(com.google.inject.spi.Elements$RecordingBinder)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:646,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].getElementSource()"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:646,1"
      Dst: "[com.google.inject.internal.MoreTypes].canonicalizeKey(com.google.inject.Key)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:646,1"
      Dst: "[com.google.inject.internal.ExposureBuilder].<init>(com.google.inject.Binder,java.lang.Object,com.google.inject.Key)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:647,1"
      Dst: "[com.google.inject.internal.PrivateElementsImpl].addExposureBuilder(com.google.inject.internal.ExposureBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].expose(java.lang.Class)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.binder.AnnotatedElementBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(java.lang.Class)"
    - "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:622,1"
      Dst: "[com.google.inject.Key].get(java.lang.Class)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:622,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].expose(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.binder.AnnotatedElementBuilder"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.Elements$RecordingBinder:627,1"
      Dst: "[com.google.inject.Key].get(com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.spi.Elements$RecordingBinder:627,1"
      Dst: "[com.google.inject.spi.Elements$RecordingBinder].exposeInternal(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.Elements$RecordingBinder].toString()"
    functionSourceFile: "com.google.inject.spi.Elements$RecordingBinder"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 699
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitAnnotation(java.lang.String,boolean)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 1
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:221,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitAnnotationDefault()"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionDepth: 1
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:226,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberAnnotationVisitor].<init>(com.google.inject.internal.util.LineNumbers$LineNumberReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[com.google.common.collect.FilteredEntryMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$ColumnMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap$MapViewOfValuesAsSingletonSets].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$TransformedEntriesMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredKeyMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$RangesByUpperBound].containsKey(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$SubRangeSetRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].containsKey(java.lang.Object)"
    - "[java.util.AbstractMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableEnumMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AsMapView].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].containsKey(java.lang.Object)"
    - "[java.util.jar.Attributes].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$RowMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$AsMapOfRanges].containsKey(java.lang.Object)"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].containsKey(java.lang.Object)"
    - "[java.util.EnumMap].containsKey(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].containsKey(java.lang.Object)"
    - "[java.util.IdentityHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.SingletonImmutableBiMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.AbstractMapBasedMultimap$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeSet$ComplementRangesByLowerBound].containsKey(java.lang.Object)"
    - "[java.util.WeakHashMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.Multimaps$AsMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.TreeRangeMap$SubRangeMap$SubRangeMapAsMap].containsKey(java.lang.Object)"
    - "[com.google.common.cache.LocalCache].containsKey(java.lang.Object)"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Row].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$AbstractFilteredMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ColumnMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$RowMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.TreeBasedTable$TreeRow].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.cache.LocalCache].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.StandardTable$Column].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Synchronized$SynchronizedMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MutableClassToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.ImmutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ForwardingMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumHashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.MapMakerInternalMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ArrayTable$ArrayMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.ImmutableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.EnumMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.AbstractBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.EnumBiMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.CompactHashMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.reflect.MutableTypeToInstanceMap].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.HashBiMap$Inverse].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[com.google.common.collect.Maps$FilteredEntryNavigableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 8
    ICount: 27
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:231"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:237"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:236"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:232"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:237"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:236"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:233"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:236"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:233"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:232,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:233,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:235,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:235,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 6
    CyclomaticComplexity: 5
  - functionName: "[com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor].visitLineNumber(int,org.objectweb.asm.Label)"
    functionSourceFile: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitLineNumber(int,org.objectweb.asm.Label)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.util.LineNumbers$LineNumberReader$LineNumberMethodVisitor:241,1"
      Dst: "[com.google.inject.internal.util.LineNumbers$LineNumberReader].visitLineNumber(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.spi.InjectionPoint$OverrideIndex].lambda$add$0(com.google.inject.spi.InjectionPoint$Signature)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.spi.InjectionPoint$OverrideIndex$lambda_add_0__113:-1,1"
      Dst: "[com.google.inject.spi.InjectionPoint$OverrideIndex].lambda$add$0(com.google.inject.spi.InjectionPoint$Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199].bootstrap$(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 2
    argTypes:
    - "java.util.function.ToIntFunction"
    - "java.lang.invoke.MethodHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199].<init>(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199].<init>(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199].<init>(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.function.ToIntFunction"
    - "java.lang.invoke.MethodHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199].apply(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$bindSignaturesToInvokers$2(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.aop.AbstractGlueGenerator$lambda_bindSignaturesToInvokers_2__199:-1,1"
      Dst: "[com.google.inject.internal.aop.AbstractGlueGenerator].lambda$bindSignaturesToInvokers$2(java.util.function.ToIntFunction,java.lang.invoke.MethodHandle,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].getGenericComponentType()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 488
    functionDepth: 0
    returnType: "java.lang.reflect.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].isFullySpecified()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:492,1"
      Dst: "[com.google.inject.internal.MoreTypes].isFullySpecified(java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 496
    functionLinenumberEnd: 498
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    functionUses: 63
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:497"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:496"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    - Branch String: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:497"
      Branch Sides:
      - BranchSide: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:496"
        BranchSideFuncs:
        - "equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:497,1"
      Dst: "[com.google.inject.internal.MoreTypes].equals(java.lang.reflect.Type,java.lang.reflect.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.reflect.Types$WildcardTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$ParameterizedTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$ParameterizedTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].hashCode()"
    - "[com.google.common.reflect.Types$GenericArrayTypeImpl].hashCode()"
    - "[com.google.inject.internal.MoreTypes$WildcardTypeImpl].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 42
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:502,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MoreTypes$GenericArrayTypeImpl].toString()"
    functionSourceFile: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 22
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:507,1"
      Dst: "[com.google.inject.internal.MoreTypes].typeToString(java.lang.reflect.Type)"
    - Src: "com.google.inject.internal.MoreTypes$GenericArrayTypeImpl:507,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].newMapRealBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:102,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newMapRealBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    - Src: "com.google.inject.multibindings.MapBinder:102,1"
      Dst: "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.inject.internal.RealMapBinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:159,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,java.lang.Class<K>,java.lang.Class<V>)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 3
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<K>"
    - "java.lang.Class<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:111,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.multibindings.MapBinder:111,1"
      Dst: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:120,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    - Src: "com.google.inject.multibindings.MapBinder:120,1"
      Dst: "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,java.lang.Class<K>,java.lang.Class<V>,java.lang.annotation.Annotation)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<K>"
    - "java.lang.Class<V>"
    - "java.lang.annotation.Annotation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:129,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.multibindings.MapBinder:129,1"
      Dst: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.'annotation'.Annotation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral<K>,com.google.inject.TypeLiteral<V>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "com.google.inject.TypeLiteral<K>"
    - "com.google.inject.TypeLiteral<V>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.Class)"
    - "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:141,1"
      Dst: "[com.google.inject.internal.RealMapBinder].newRealMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.Class)"
    - Src: "com.google.inject.multibindings.MapBinder:141,1"
      Dst: "[com.google.inject.multibindings.MapBinder].<init>(com.google.inject.internal.RealMapBinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,java.lang.Class<K>,java.lang.Class<V>,java.lang.Class<?\
      \ extends Annotation>)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.multibindings.MapBinder<K,V>"
    argCount: 4
    argTypes:
    - "com.google.inject.Binder"
    - "java.lang.Class<K>"
    - "java.lang.Class<V>"
    - "java.lang.Class<? extends Annotation>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:154,1"
      Dst: "[com.google.inject.TypeLiteral].get(java.lang.Class)"
    - Src: "com.google.inject.multibindings.MapBinder:153,1"
      Dst: "[com.google.inject.multibindings.MapBinder].newMapBinder(com.google.inject.Binder,com.google.inject.TypeLiteral,com.google.inject.TypeLiteral,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].permitDuplicates()"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "com.google.inject.multibindings.MapBinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].permitDuplicates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:179,1"
      Dst: "[com.google.inject.internal.RealMapBinder].permitDuplicates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].addBinding(java.lang.Object)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 13
    returnType: "com.google.inject.binder.LinkedBindingBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].addBinding(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:194,1"
      Dst: "[com.google.inject.internal.RealMapBinder].addBinding(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 205
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    functionUses: 56
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.multibindings.MapBinder:201"
      Branch Sides:
      - BranchSide: "com.google.inject.multibindings.MapBinder:204"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "com.google.inject.multibindings.MapBinder:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:202,1"
      Dst: "[com.google.inject.internal.RealMapBinder].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.multibindings.MapBinder].hashCode()"
    functionSourceFile: "com.google.inject.multibindings.MapBinder"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.RealMapBinder].hashCode()"
    functionUses: 34
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.multibindings.MapBinder:209,1"
      Dst: "[com.google.inject.internal.RealMapBinder].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170].test(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$1(com.google.inject.Binding)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.MissingImplementationErrorHints$lambda_getSuggestions_1__170:-1,1"
      Dst: "[com.google.inject.internal.MissingImplementationErrorHints].lambda$getSuggestions$1(com.google.inject.Binding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$ConstantProvider].get()"
    functionSourceFile: "com.google.inject.util.Providers$ConstantProvider"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$ConstantProvider].toString()"
    functionSourceFile: "com.google.inject.util.Providers$ConstantProvider"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$ConstantProvider:70,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.util.Providers$ConstantProvider].equals(java.lang.Object)"
    functionSourceFile: "com.google.inject.util.Providers$ConstantProvider"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    functionUses: 56
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "com.google.inject.util.Providers$ConstantProvider:75"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers$ConstantProvider:75"
        BranchSideFuncs:
        - "equal(java.lang.Object,java.lang.Object)"
      - BranchSide: "com.google.inject.util.Providers$ConstantProvider:74"
        BranchSideFuncs: []
    - Branch String: "com.google.inject.util.Providers$ConstantProvider:76"
      Branch Sides:
      - BranchSide: "com.google.inject.util.Providers$ConstantProvider:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "com.google.inject.util.Providers$ConstantProvider:76,1"
      Dst: "[com.google.common.base.Objects].equal(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[com.google.inject.util.Providers$ConstantProvider].hashCode()"
    functionSourceFile: "com.google.inject.util.Providers$ConstantProvider"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    functionUses: 34
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.util.Providers$ConstantProvider:81,1"
      Dst: "[com.google.common.base.Objects].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.Initializables].<init>()"
    functionSourceFile: "com.google.inject.internal.Initializables"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.Initializables:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].injectMembers(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:251,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBindings()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getBindings()"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBindings()"
    - "[com.google.inject.Injector].getBindings()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:257,1"
      Dst: "[com.google.inject.Injector].getBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getAllBindings()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getAllBindings()"
    - "[com.google.inject.internal.InjectorImpl].getAllBindings()"
    - "[com.google.inject.Injector].getAllBindings()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:262,1"
      Dst: "[com.google.inject.Injector].getAllBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBinding(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "com.google.inject.Binding"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InjectorImpl].getBinding(com.google.inject.Key)"
    - "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:267,1"
      Dst: "[com.google.inject.Injector].getBinding(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getBinding(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Binding"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getBinding(java.lang.Class)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:272,1"
      Dst: "[com.google.inject.Injector].getBinding(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getExistingBinding(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "com.google.inject.Binding"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.InjectorImpl].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getExistingBinding(com.google.inject.Key)"
    - "[com.google.inject.Injector].getExistingBinding(com.google.inject.Key)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:277,1"
      Dst: "[com.google.inject.Injector].getExistingBinding(com.google.inject.Key)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].findBindingsByType(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].findBindingsByType(com.google.inject.TypeLiteral)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:282,1"
      Dst: "[com.google.inject.Injector].findBindingsByType(com.google.inject.TypeLiteral)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getParent()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getParent()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:287,1"
      Dst: "[com.google.inject.Injector].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].createChildInjector(java.lang.Iterable)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].createChildInjector(java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:292,1"
      Dst: "[com.google.inject.Injector].createChildInjector(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].createChildInjector(com.google.inject.Module[])"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Injector"
    argCount: 1
    argTypes:
    - "com.google.inject.Module[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].createChildInjector(com.google.inject.Module[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:297,1"
      Dst: "[com.google.inject.Injector].createChildInjector(com.google.inject.Module[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getScopeBindings()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getScopeBindings()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:302,1"
      Dst: "[com.google.inject.Injector].getScopeBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getTypeConverterBindings()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getTypeConverterBindings()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:307,1"
      Dst: "[com.google.inject.Injector].getTypeConverterBindings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getElements()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getElements()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:312,1"
      Dst: "[com.google.inject.Injector].getElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getAllMembersInjectorInjectionPoints()"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.Injector].getAllMembersInjectorInjectionPoints()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:317,1"
      Dst: "[com.google.inject.Injector].getAllMembersInjectorInjectionPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getProvider(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:322,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getProvider(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.Provider"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:328,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getMembersInjector(com.google.inject.TypeLiteral)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector"
    argCount: 1
    argTypes:
    - "com.google.inject.TypeLiteral"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:334,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getMembersInjector(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.google.inject.MembersInjector"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:340,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getInstance(com.google.inject.Key)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "com.google.inject.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:346,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.InternalInjectorCreator$ToolStageInjector].getInstance(java.lang.Class)"
    functionSourceFile: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.InternalInjectorCreator$ToolStageInjector:352,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116].accept(java.lang.Object)"
    functionSourceFile: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "com.google.inject.internal.UntargettedBindingProcessor$1$addCreationListener__116:-1,1"
      Dst: "[com.google.inject.internal.ProcessedBindingData].addCreationListener(com.google.inject.internal.CreationListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[java.util.concurrent.Callable].call()"
    functionSourceFile: "java.util.concurrent.Callable"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: false
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Paths].get(java.lang.String,java.lang.String[])"
    functionSourceFile: "java.nio.file.Paths"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Paths].get(java.net.URI)"
    functionSourceFile: "java.nio.file.Paths"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.InputStream].<init>()"
    functionSourceFile: "java.io.InputStream"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.InputStream].read()"
    functionSourceFile: "java.io.InputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: false
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.InputStream].read(byte[])"
    functionSourceFile: "java.io.InputStream"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.InputStream].read(byte[],int,int)"
    functionSourceFile: "java.io.InputStream"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].console()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "java.io.Console"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getSecurityManager()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 377
    functionDepth: 0
    returnType: "java.lang.SecurityManager"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getProperties()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 729
    functionLinenumberEnd: 736
    functionDepth: 0
    returnType: "java.util.Properties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getProperty(java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 826
    functionLinenumberEnd: 834
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 861
    functionLinenumberEnd: 869
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getenv(java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 1010
    functionLinenumberEnd: 1017
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].getenv()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 1059
    functionLinenumberEnd: 1066
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].runFinalization()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 1812
    functionLinenumberEnd: 1815
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].load(java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 1853
    functionLinenumberEnd: 1856
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].loadLibrary(java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 1889
    functionLinenumberEnd: 1892
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.System].mapLibraryName(java.lang.String)"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: false
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].command(java.util.List)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].command(java.lang.String[])"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].command()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].directory()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].directory(java.io.File)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 421
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectInput(java.lang.ProcessBuilder$Redirect)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 766
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.lang.ProcessBuilder$Redirect"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectOutput(java.lang.ProcessBuilder$Redirect)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 790
    functionLinenumberEnd: 796
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.lang.ProcessBuilder$Redirect"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectError(java.lang.ProcessBuilder$Redirect)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 824
    functionLinenumberEnd: 830
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.lang.ProcessBuilder$Redirect"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectInput(java.io.File)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 845
    functionLinenumberEnd: 847
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectOutput(java.io.File)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 862
    functionLinenumberEnd: 864
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectError(java.io.File)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 879
    functionLinenumberEnd: 881
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectInput()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 893
    functionLinenumberEnd: 895
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder$Redirect"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectOutput()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 907
    functionLinenumberEnd: 909
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder$Redirect"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectError()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder$Redirect"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].inheritIO()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 947
    functionLinenumberEnd: 950
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectErrorStream()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 968
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].redirectErrorStream(boolean)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 984
    functionLinenumberEnd: 987
    functionDepth: 0
    returnType: "java.lang.ProcessBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].start()"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 1070
    functionLinenumberEnd: 1072
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.ProcessBuilder].start(java.lang.ProcessBuilder$Redirect[])"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 1084
    functionLinenumberEnd: 1129
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 1
    argTypes:
    - "java.lang.ProcessBuilder$Redirect[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.lang.String,int)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.lang.String,java.io.File)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.lang.String)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 333
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 376
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].<init>(java.net.URI)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 441
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].createNewFile()"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 1029
    functionLinenumberEnd: 1036
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].delete()"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 1056
    functionLinenumberEnd: 1065
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].deleteOnExit()"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 1094
    functionLinenumberEnd: 1104
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].renameTo(java.io.File)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 1436
    functionLinenumberEnd: 1449
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 2102
    functionLinenumberEnd: 2133
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 2174
    functionLinenumberEnd: 2176
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionSourceFile: "java.util.concurrent.Executor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: false
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String)"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String,java.lang.String[])"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String,java.lang.String[],java.io.File)"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 417
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String[]"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String[])"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String[],java.lang.String[])"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 493
    functionLinenumberEnd: 495
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.lang.Runtime].exec(java.lang.String[],java.lang.String[],java.io.File)"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 588
    functionLinenumberEnd: 593
    functionDepth: 0
    returnType: "java.lang.Process"
    argCount: 3
    argTypes:
    - "java.lang.String[]"
    - "java.lang.String[]"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].write(int)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 478
    functionLinenumberEnd: 491
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].write(char[],int,int)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 517
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].write(char[])"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 523
    functionLinenumberEnd: 526
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].write(java.lang.String,int,int)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 539
    functionLinenumberEnd: 552
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].write(java.lang.String)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 561
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(boolean)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 593
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(char)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 605
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(int)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 616
    functionLinenumberEnd: 619
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(long)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(float)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(double)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 661
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(char[])"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 672
    functionLinenumberEnd: 675
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(java.lang.String)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 685
    functionLinenumberEnd: 688
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].print(java.lang.Object)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println()"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(boolean)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 722
    functionLinenumberEnd: 728
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(char)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 736
    functionLinenumberEnd: 742
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(int)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 750
    functionLinenumberEnd: 756
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(long)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 764
    functionLinenumberEnd: 770
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(float)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 778
    functionLinenumberEnd: 784
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(double)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 792
    functionLinenumberEnd: 798
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(char[])"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 806
    functionLinenumberEnd: 812
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(java.lang.String)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 826
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].println(java.lang.Object)"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 836
    functionLinenumberEnd: 843
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].printf(java.lang.String,java.lang.Object[])"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 888
    functionLinenumberEnd: 890
    functionDepth: 0
    returnType: "java.io.PrintWriter"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.PrintWriter].printf(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionSourceFile: "java.io.PrintWriter"
    linkageType: ""
    functionLinenumber: 941
    functionLinenumberEnd: 943
    functionDepth: 0
    returnType: "java.io.PrintWriter"
    argCount: 3
    argTypes:
    - "java.util.Locale"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedWriter].write(int)"
    functionSourceFile: "java.io.BufferedWriter"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedWriter].write(char[],int,int)"
    functionSourceFile: "java.io.BufferedWriter"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedWriter].write(java.lang.String,int,int)"
    functionSourceFile: "java.io.BufferedWriter"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 237
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].<init>(java.io.Reader,int)"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].read()"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].read(char[],int,int)"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].readLine(boolean)"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 375
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.BufferedReader].readLine()"
    functionSourceFile: "java.io.BufferedReader"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 393
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createFile(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 647
    functionLinenumberEnd: 650
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createDirectory(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 689
    functionLinenumberEnd: 692
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 786
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createTempFile(java.nio.file.Path,java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 867
    functionLinenumberEnd: 869
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 4
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 912
    functionLinenumberEnd: 914
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createTempDirectory(java.nio.file.Path,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 965
    functionLinenumberEnd: 967
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.String"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createTempDirectory(java.lang.String,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1006
    functionLinenumberEnd: 1008
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createSymbolicLink(java.nio.file.Path,java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1058
    functionLinenumberEnd: 1061
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].createLink(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1101
    functionLinenumberEnd: 1104
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].delete(java.nio.file.Path)"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1141
    functionLinenumberEnd: 1144
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1180
    functionLinenumberEnd: 1182
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].move(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 1418
    functionLinenumberEnd: 1428
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].write(java.nio.file.Path,byte[],java.nio.file.OpenOption[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 3422
    functionLinenumberEnd: 3435
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "byte[]"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].write(java.nio.file.Path,java.lang.Iterable,java.nio.charset.Charset,java.nio.file.OpenOption[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 3487
    functionLinenumberEnd: 3498
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 4
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.Iterable"
    - "java.nio.charset.Charset"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].write(java.nio.file.Path,java.lang.Iterable,java.nio.file.OpenOption[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 3540
    functionLinenumberEnd: 3542
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.Iterable"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.nio.file.Files].find(java.nio.file.Path,int,java.util.function.BiPredicate,java.nio.file.FileVisitOption[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 3941
    functionLinenumberEnd: 3953
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.nio.file.Path"
    - "int"
    - "java.util.function.BiPredicate"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: true
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.OutputStream].write(int)"
    functionSourceFile: "java.io.OutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: false
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.OutputStream].write(byte[])"
    functionSourceFile: "java.io.OutputStream"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[java.io.OutputStream].write(byte[],int,int)"
    functionSourceFile: "java.io.OutputStream"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: true
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: true
      classConcrete: false
      classEnum: false
    BBCount: 0
    CyclomaticComplexity: 0
