---
Fuzzer filename: "ossfuzz.EnhancerFuzzer"
Fuzzing method: "fuzzerTestOneInput"
All functions:
  Function list name: "All functions"
  Elements:
  - functionName: "[net.sf.cglib.core.Local].<init>(int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.Local"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Local:25,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: "[net.sf.cglib.core.Local].getIndex()"
    functionSourceFile: "net.sf.cglib.core.Local"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "int"
    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: "[net.sf.cglib.core.Local].getType()"
    functionSourceFile: "net.sf.cglib.core.Local"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    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: "[net.sf.cglib.core.EmitUtils$11].<init>()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$11"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 747
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$11:746,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: "[net.sf.cglib.core.EmitUtils$11].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$11"
    linkageType: ""
    functionLinenumber: 747
    functionLinenumberEnd: 749
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$11:748,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.EmitUtils$11:748,1"
      Dst: "[net.sf.cglib.core.Signature].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: "[net.sf.cglib.core.Signature].getName()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils$8].<init>(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$8"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Label"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$8:507,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: "[net.sf.cglib.core.EmitUtils$8].processElement(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$8"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].not_equals_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$8:509,1"
      Dst: "[net.sf.cglib.core.EmitUtils].not_equals_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].not_equals_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 552
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Label"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    - "net.sf.cglib.core.ProcessArrayCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.EmitUtils].nullcmp(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop2()"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].process_arrays(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - "[java.util.Vector].isEmpty()"
    - "[sun.awt.util.IdentityArrayList].isEmpty()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.core.KeyFactory$1].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.KeyFactory$4].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 48
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:519"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:522"
        BranchSideFuncs:
        - "if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:521"
        BranchSideFuncs:
        - "isArray(org.objectweb.asm.Type)"
        - "nullcmp(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Branch String: "net.sf.cglib.core.EmitUtils:524"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:536"
        BranchSideFuncs:
        - "if_icmp(int,org.objectweb.asm.Label)"
        - "make_label()"
        - "pop2()"
        - "arraylength()"
        - "goTo(org.objectweb.asm.Label)"
        - "dup2()"
        - "process_arrays(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:535"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(java.lang.Class)"
    - Branch String: "net.sf.cglib.core.EmitUtils:537"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:546"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:545"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "if_jump(int,org.objectweb.asm.Label)"
    - Branch String: "net.sf.cglib.core.EmitUtils:538"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:541"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:540"
        BranchSideFuncs:
        - "swap()"
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "net.sf.cglib.core.EmitUtils:542"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:546"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "iterator()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:545"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "if_jump(int,org.objectweb.asm.Label)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:519,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:520,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:522,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:523,1"
      Dst: "[net.sf.cglib.core.EmitUtils].nullcmp(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:524,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:526,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.core.EmitUtils:527,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - Src: "net.sf.cglib.core.EmitUtils:528,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.EmitUtils:530,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:531,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop2()"
    - Src: "net.sf.cglib.core.EmitUtils:532,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:533,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:534,1"
      Dst: "[net.sf.cglib.core.EmitUtils].process_arrays(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:536,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:537,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.sf.cglib.core.EmitUtils:538,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.EmitUtils:538,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.EmitUtils:538,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.EmitUtils:539,1"
      Dst: "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:546,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:547,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:303,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    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: "[net.sf.cglib.core.CodeEmitter].if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 209
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    functionUses: 2
    ICount: 47
    EdgeCount: 29
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:174,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "net.sf.cglib.core.CodeEmitter:176,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:188,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:194,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:194,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:199,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.CodeEmitter:207,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 20
    CyclomaticComplexity: 11
  - functionName: "[net.sf.cglib.core.CodeEmitter].swap()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 14
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:218,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionUses: 8
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:160,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].make_label()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 571
    functionLinenumberEnd: 573
    functionDepth: 0
    returnType: "org.objectweb.asm.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Label].<init>()"
    functionUses: 40
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:572,1"
      Dst: "[org.objectweb.asm.Label].<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: "[net.sf.cglib.core.EmitUtils].nullcmp(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 580
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop2()"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 19
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:561,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.core.EmitUtils:562,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:565,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:567,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop2()"
    - Src: "net.sf.cglib.core.EmitUtils:568,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:570,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:571,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.core.CodeEmitter].dup2()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 8
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:213,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionUses: 8
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:157,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].pop2()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:211,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionUses: 22
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:155,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 672
    functionLinenumberEnd: 675
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLabel(org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLabel(org.objectweb.asm.Label)"
    functionUses: 39
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:673,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionUses: 7
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:156,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:292"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:291"
        BranchSideFuncs:
        - "getSort()"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:292,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    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: "[net.sf.cglib.core.CodeEmitter].arraylength()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:352,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:164,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_cmp(org.objectweb.asm.Type,int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].process_arrays(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.ProcessArrayCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$7].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$9].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$8].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.ProcessArrayCallback].processElement(org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 30
    EdgeCount: 28
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:136,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.core.EmitUtils:139,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:140,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:142,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.core.EmitUtils:144,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:146,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:148,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:149,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.core.EmitUtils:151,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:155,1"
      Dst: "[net.sf.cglib.core.ProcessArrayCallback].processElement(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:156,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - Src: "net.sf.cglib.core.EmitUtils:161,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - Src: "net.sf.cglib.core.EmitUtils:162,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    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: "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 300
    functionDepth: 1
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    functionUses: 4
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:296"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:299"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:298"
        BranchSideFuncs:
        - "getType(java.lang.String)"
        - "substring(int)"
        - "getDescriptor()"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:296,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:297,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:297,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:299,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.TypeUtils:299,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.sf.cglib.core.TypeUtils:299,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[net.sf.cglib.core.CodeEmitter].make_local()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionDepth: 2
    returnType: "net.sf.cglib.core.Local"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:576,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 1
    returnType: "net.sf.cglib.core.Local"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Local].<init>(int,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getSize()"
    - "[net.sf.cglib.core.LocalVariablesSorter].newLocal(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:580,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    - Src: "net.sf.cglib.core.CodeEmitter:580,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].newLocal(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:580,1"
      Dst: "[net.sf.cglib.core.Local].<init>(int,org.objectweb.asm.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: "[net.sf.cglib.core.LocalVariablesSorter].newLocal(int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    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: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 410
    functionLinenumberEnd: 413
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Local"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Local].getIndex()"
    - "[net.sf.cglib.core.Local].getType()"
    - "[net.sf.cglib.core.CodeEmitter].store_local(org.objectweb.asm.Type,int)"
    functionUses: 16
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:411,1"
      Dst: "[net.sf.cglib.core.Local].getType()"
    - Src: "net.sf.cglib.core.CodeEmitter:411,1"
      Dst: "[net.sf.cglib.core.Local].getIndex()"
    - Src: "net.sf.cglib.core.CodeEmitter:411,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(org.objectweb.asm.Type,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: "[net.sf.cglib.core.CodeEmitter].store_local(org.objectweb.asm.Type,int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:403,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:403,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,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: "[net.sf.cglib.core.CodeEmitter].push(int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].ICONST(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitIntInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIntInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    functionUses: 41
    ICount: 25
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:299"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:301"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:300"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:301"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:303"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "ICONST(int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:302"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:303"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:305"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:304"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:305"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:308"
        BranchSideFuncs:
        - "visitIntInsn(int,int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:307"
        BranchSideFuncs:
        - "valueOf(int)"
        - "visitLdcInsn(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:300,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:300,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - Src: "net.sf.cglib.core.CodeEmitter:302,1"
      Dst: "[net.sf.cglib.core.TypeUtils].ICONST(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:302,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:304,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,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: 10
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.TypeUtils].ICONST(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 346
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    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: 9
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 414
    functionLinenumberEnd: 417
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Local"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Local].getIndex()"
    - "[net.sf.cglib.core.Local].getType()"
    - "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:415,1"
      Dst: "[net.sf.cglib.core.Local].getType()"
    - Src: "net.sf.cglib.core.CodeEmitter:415,1"
      Dst: "[net.sf.cglib.core.Local].getIndex()"
    - Src: "net.sf.cglib.core.CodeEmitter:415,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,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: "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:398,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:398,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,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: "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:245,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:245,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.Local"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Local].getIndex()"
    - "[org.objectweb.asm.MethodWriter].visitIincInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitIincInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIincInsn(int,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:407,1"
      Dst: "[net.sf.cglib.core.Local].getIndex()"
    - Src: "net.sf.cglib.core.CodeEmitter:407,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,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: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 514
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:512,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 506
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].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].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[org.objectweb.asm.Type].getInternalName()"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    functionUses: 5
    ICount: 16
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:495"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:500"
        BranchSideFuncs:
        - "getName()"
        - "getDescriptor()"
        - "getInternalName()"
    - Branch String: "net.sf.cglib.core.CodeEmitter:495"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:500"
        BranchSideFuncs:
        - "getName()"
        - "getDescriptor()"
        - "getInternalName()"
    - Branch String: "net.sf.cglib.core.CodeEmitter:495"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:500"
        BranchSideFuncs:
        - "getName()"
        - "getDescriptor()"
        - "getInternalName()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:495,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.core.CodeEmitter:495,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.CodeEmitter:501,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "net.sf.cglib.core.CodeEmitter:503,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.core.CodeEmitter:500,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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.Signature].getDescriptor()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.String"
    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: "[net.sf.cglib.beans.BeanCopier$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:63,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].setSource(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:70"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:67,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:67,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:68,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:68,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].setTarget(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:74"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:78"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:74,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:74,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:75,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:75,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].setUseConverter(boolean)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:86,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.beans.BeanCopier$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:90,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "java.security.ProtectionDomain"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$4].<init>(java.lang.Class)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[net.sf.cglib.core.ReflectUtils$4].run()"
    functionUses: 14
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:142"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:145"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:144"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:145,1"
      Dst: "[net.sf.cglib.core.ReflectUtils$4].<init>(java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:145,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    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: "[net.sf.cglib.core.ReflectUtils$4].<init>(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$4"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    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: "net.sf.cglib.core.ReflectUtils$4:145,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: "[net.sf.cglib.beans.BeanCopier$Generator].create()"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.beans.BeanCopier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.beans.BeanCopier$BeanCopierKey].newInstance(java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:94,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:94,1"
      Dst: "[net.sf.cglib.beans.BeanCopier$BeanCopierKey].newInstance(java.lang.String,java.lang.String,boolean)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:95,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.beans.BeanCopier$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 162
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ReflectUtils].getBeanGetters(java.lang.Class)"
    - "[net.sf.cglib.core.ReflectUtils].getBeanSetters(java.lang.Class)"
    - "[java.util.HashMap].<init>()"
    - "[java.beans.FeatureDescriptor].getName()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[java.beans.PropertyDescriptor].getReadMethod()"
    - "[java.beans.PropertyDescriptor].getWriteMethod()"
    - "[net.sf.cglib.beans.BeanCopier$Generator].compatible(java.beans.PropertyDescriptor,java.beans.PropertyDescriptor)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 3
    ICount: 89
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:115"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:117"
        BranchSideFuncs:
        - "make_local()"
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:120"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:128"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:127"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:133"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:158"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:157"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
        - "end_class()"
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:136"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:133"
        BranchSideFuncs:
        - "compatible(java.beans.PropertyDescriptor,java.beans.PropertyDescriptor)"
        - "getReadMethod()"
        - "getWriteMethod()"
        - "getMethodInfo(java.lang.reflect.Member)"
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:132"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:139"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:137"
        BranchSideFuncs:
        - "box(org.objectweb.asm.Type)"
        - "load_local(net.sf.cglib.core.Local)"
        - "unbox_or_zero(org.objectweb.asm.Type)"
        - "getSignature()"
        - "load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "getName()"
        - "getArgumentTypes()"
        - "load_arg(int)"
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "push(java.lang.String)"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:136"
        BranchSideFuncs:
        - "compatible(java.beans.PropertyDescriptor,java.beans.PropertyDescriptor)"
        - "getReadMethod()"
        - "getWriteMethod()"
        - "getMethodInfo(java.lang.reflect.Member)"
    - Branch String: "net.sf.cglib.beans.BeanCopier$Generator:139"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:133"
        BranchSideFuncs:
        - "box(org.objectweb.asm.Type)"
        - "load_local(net.sf.cglib.core.Local)"
        - "unbox_or_zero(org.objectweb.asm.Type)"
        - "getSignature()"
        - "load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "getName()"
        - "getArgumentTypes()"
        - "load_arg(int)"
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "push(java.lang.String)"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.beans.BeanCopier$Generator:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:99,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:101,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:104,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:102,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:109,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:110,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:111,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanGetters(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:112,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanSetters(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:114,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:116,1"
      Dst: "[java.beans.FeatureDescriptor].getName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:116,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:118,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:121,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:122,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:123,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:135,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:137,1"
      Dst: "[java.beans.PropertyDescriptor].getReadMethod()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:137,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:138,1"
      Dst: "[java.beans.PropertyDescriptor].getWriteMethod()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:140,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:140,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:141,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:144,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:145,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:145,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:146,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:147,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:147,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:148,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:149,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:139,1"
      Dst: "[net.sf.cglib.beans.BeanCopier$Generator].compatible(java.beans.PropertyDescriptor,java.beans.PropertyDescriptor)"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:152,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:158,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:159,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:160,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 15
    CyclomaticComplexity: 7
  - functionName: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassTransformer].<init>()"
    - "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    functionUses: 15
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:41,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].<init>()"
    - Src: "net.sf.cglib.core.ClassEmitter:42,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:51,1"
      Dst: "[java.util.HashMap].<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: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[net.sf.cglib.core.ClassEmitter$1].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.Type,org.objectweb.asm.Type,org.objectweb.asm.Type[],int)"
    - "[net.sf.cglib.core.ClassEmitter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassVisitorTee].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DebuggingClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.ClassNameReader$1].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.Type].getInternalName()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ClassEmitter$1].getSuperType()"
    - "[net.sf.cglib.core.ClassEmitter:net.sf.cglib.core.ReflectUtils$6].getSuperType()"
    - "[net.sf.cglib.core.TypeUtils].toInternalNames(org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassVisitor].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitSource(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.impl.AddStaticInitTransformer].init()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[net.sf.cglib.core.ClassInfo].getSuperType()"
    - "[net.sf.cglib.core.ClassEmitter].init()"
    functionUses: 22
    ICount: 27
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:88"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:90"
        BranchSideFuncs:
        - "visitSource(java.lang.String,java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:89"
        BranchSideFuncs:
        - "init()"
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:67,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.ClassEmitter:67,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:67,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:68,1"
      Dst: "[net.sf.cglib.core.ClassEmitter$1].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.Type,org.objectweb.asm.Type,org.objectweb.asm.Type[],int)"
    - Src: "net.sf.cglib.core.ClassEmitter:84,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.core.ClassEmitter:84,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "net.sf.cglib.core.ClassEmitter:86,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getSuperType()"
    - Src: "net.sf.cglib.core.ClassEmitter:87,1"
      Dst: "[net.sf.cglib.core.TypeUtils].toInternalNames(org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.ClassEmitter:82,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "net.sf.cglib.core.ClassEmitter:89,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitSource(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:90,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ClassEmitter$1].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.Type,org.objectweb.asm.Type,org.objectweb.asm.Type[],int)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassInfo].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$1:68,1"
      Dst: "[net.sf.cglib.core.ClassInfo].<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: "[net.sf.cglib.core.TypeUtils].toInternalNames(org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getInternalName()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:157"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:160"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:159"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:161"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:162,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    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: "[net.sf.cglib.core.ClassEmitter].init()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 11
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:89,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.EmitUtils:90,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.core.EmitUtils:91,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - Src: "net.sf.cglib.core.EmitUtils:92,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.core.EmitUtils:93,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 176
    functionDepth: 6
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.ClassEmitter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassTransformerChain].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    - "[net.sf.cglib.core.TypeUtils].toInternalNames(org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].<init>(net.sf.cglib.core.ClassEmitter,int,org.objectweb.asm.MethodVisitor)"
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.ClassEmitter$3].<init>(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.sf.cglib.core.ClassEmitter)"
    functionUses: 67
    ICount: 46
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:141"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:144"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:143"
        BranchSideFuncs:
        - "isInterface(int)"
        - "getAccess()"
        - "getName()"
        - "getDescriptor()"
        - "toInternalNames(org.objectweb.asm.Type[])"
    - Branch String: "net.sf.cglib.core.ClassEmitter:148"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:168"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.ClassEmitter,int,org.objectweb.asm.MethodVisitor)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:167"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.ClassEmitter:148"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:168"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.ClassEmitter,int,org.objectweb.asm.MethodVisitor)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:167"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.ClassEmitter:161"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:164"
        BranchSideFuncs:
        - "invoke_static_this(net.sf.cglib.core.Signature)"
    - Branch String: "net.sf.cglib.core.ClassEmitter:168"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:175"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:174"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:142,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.core.ClassEmitter:142,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:144,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.core.ClassEmitter:145,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.core.ClassEmitter:147,1"
      Dst: "[net.sf.cglib.core.TypeUtils].toInternalNames(org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.ClassEmitter:143,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "net.sf.cglib.core.ClassEmitter:148,1"
      Dst: "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:148,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - Src: "net.sf.cglib.core.ClassEmitter:148,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.core.ClassEmitter:150,1"
      Dst: "[net.sf.cglib.core.ClassEmitter$2].<init>(net.sf.cglib.core.ClassEmitter,int,org.objectweb.asm.MethodVisitor)"
    - Src: "net.sf.cglib.core.ClassEmitter:160,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.ClassEmitter:163,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - Src: "net.sf.cglib.core.ClassEmitter:165,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.ClassEmitter:169,1"
      Dst: "[net.sf.cglib.core.ClassEmitter$3].<init>(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.Signature:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Signature:64"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.Signature:63"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.Signature:64"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Signature:66"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.Signature:65"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.Signature:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Signature:65"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.Signature:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Signature:65"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.Signature:67,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: 9
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.ClassEmitter].getAccess()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$6].getModifiers()"
    - "[net.sf.cglib.core.ClassEmitter$1].getModifiers()"
    - "[net.sf.cglib.core.ClassInfo].getModifiers()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:113,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:66"
        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: "[net.sf.cglib.core.ClassEmitter$2].<init>(net.sf.cglib.core.ClassEmitter,int,org.objectweb.asm.MethodVisitor)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$2"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "int"
    - "org.objectweb.asm.MethodVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$2:150,1"
      Dst: "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "org.objectweb.asm.MethodVisitor"
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.LocalVariablesSorter].<init>(int,java.lang.String,org.objectweb.asm.MethodVisitor)"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    - "[net.sf.cglib.core.CodeEmitter$State].<init>(net.sf.cglib.core.ClassInfo,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].getClassInfo()"
    functionUses: 3
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:106,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.core.CodeEmitter:106,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].<init>(int,java.lang.String,org.objectweb.asm.MethodVisitor)"
    - Src: "net.sf.cglib.core.CodeEmitter:108,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassInfo()"
    - Src: "net.sf.cglib.core.CodeEmitter:108,1"
      Dst: "[net.sf.cglib.core.CodeEmitter$State].<init>(net.sf.cglib.core.ClassInfo,int,net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.core.LocalVariablesSorter].<init>(int,java.lang.String,org.objectweb.asm.MethodVisitor)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.MethodVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    - "[net.sf.cglib.core.LocalVariablesSorter$State].<init>()"
    - "[org.objectweb.asm.Type].getArgumentTypes(java.lang.String)"
    - "[org.objectweb.asm.Type].getSize()"
    functionUses: 1
    ICount: 32
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:69"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:66"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:65"
        BranchSideFuncs:
        - "<init>()"
        - "getArgumentTypes(java.lang.String)"
        - "<init>(int,org.objectweb.asm.MethodVisitor)"
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:70"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:66,1"
      Dst: "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:67,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter$State].<init>()"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:68,1"
      Dst: "[org.objectweb.asm.Type].getArgumentTypes(java.lang.String)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:71,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    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: "[net.sf.cglib.core.LocalVariablesSorter$State].<init>()"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter$State"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter$State: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: "[net.sf.cglib.core.ClassEmitter].getClassInfo()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "net.sf.cglib.core.ClassInfo"
    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: "[net.sf.cglib.core.CodeEmitter$State].<init>(net.sf.cglib.core.ClassInfo,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.ClassInfo"
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.MethodInfo].<init>()"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter$State:79"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter$State:74"
        BranchSideFuncs:
        - "isStatic(int)"
        - "getArgumentTypes()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter$State:73"
        BranchSideFuncs:
        - "<init>()"
        - "isStatic(int)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter$State:74,1"
      Dst: "[net.sf.cglib.core.MethodInfo].<init>()"
    - Src: "net.sf.cglib.core.CodeEmitter$State:79,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.core.CodeEmitter$State:80,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    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: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:50"
        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: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getArgumentTypes(java.lang.String)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:54,1"
      Dst: "[org.objectweb.asm.Type].getArgumentTypes(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: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 107
    functionDepth: 5
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].getNextHook()"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 5
    ICount: 24
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:94"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:97"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:96"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter:97"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:106"
        BranchSideFuncs:
        - "getNextHook()"
        - "<init>(java.lang.String,java.lang.String)"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:105"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter:102"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:106"
        BranchSideFuncs:
        - "invoke_static_this(net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:94,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - Src: "net.sf.cglib.core.ClassEmitter:94,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.core.ClassEmitter:95,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:98,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getNextHook()"
    - Src: "net.sf.cglib.core.ClassEmitter:98,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.core.ClassEmitter:98,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:99,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.ClassEmitter:103,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.ClassEmitter].getNextHook()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 14
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.Signature:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Signature:33"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.Signature:32"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.Signature:30,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.Signature:31,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.Signature:31,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 528
    functionLinenumberEnd: 531
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:529,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:529,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.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: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter$1:net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:117,1"
      Dst: "[net.sf.cglib.core.ClassInfo].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: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 516
    functionLinenumberEnd: 519
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionUses: 13
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:517,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 523
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:521,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.ClassEmitter$3].<init>(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$3"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.ClassEmitter"
    - "org.objectweb.asm.MethodVisitor"
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$3:169,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.ClassEmitter,org.objectweb.asm.MethodVisitor,int,net.sf.cglib.core.Signature,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].load_this()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 361
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    functionUses: 67
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:356"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:359"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:358"
        BranchSideFuncs:
        - "visitVarInsn(int,int)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:356,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:357,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:359,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 489
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:487,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:487,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.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: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter$1].getSuperType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getSuperType()"
    - "[net.sf.cglib.core.ClassInfo].getSuperType()"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:121,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getSuperType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:483,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.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: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:533,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 421
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    functionUses: 83
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:419,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.core.CodeEmitter:419,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:419,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.Signature].getReturnType()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getReturnType(java.lang.String)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:50,1"
      Dst: "[org.objectweb.asm.Type].getReturnType(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: "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    functionUses: 75
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:138,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,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: "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 845
    functionLinenumberEnd: 850
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMaxs(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitMaxs(int,int)"
    functionUses: 9
    ICount: 10
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:846"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:849"
        BranchSideFuncs:
        - "visitMaxs(int,int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:848"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:846,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:847,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:63"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:62"
        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: "[net.sf.cglib.core.ReflectUtils].getBeanGetters(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 2
    returnType: "java.beans.PropertyDescriptor[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:364,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,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: "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,boolean)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 389
    functionDepth: 1
    returnType: "java.beans.PropertyDescriptor[]"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.beans.Introspector].getBeanInfo(java.lang.Class,java.lang.Class)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.beans.PropertyDescriptor].getReadMethod()"
    - "[java.beans.PropertyDescriptor].getWriteMethod()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.beans.BeanInfo].getPropertyDescriptors()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 33
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:378"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:377"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:378"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:377"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:379"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:386"
        BranchSideFuncs:
        - "getReadMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:385"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
        - "size()"
    - Branch String: "net.sf.cglib.core.ReflectUtils:381"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:380"
        BranchSideFuncs:
        - "getWriteMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:379"
        BranchSideFuncs:
        - "getReadMethod()"
    - Branch String: "net.sf.cglib.core.ReflectUtils:381"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:383"
        BranchSideFuncs:
        - "getWriteMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:382"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:381"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:378"
        BranchSideFuncs:
        - "getWriteMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:377"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:382"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:378"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:377"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:373,1"
      Dst: "[java.beans.Introspector].getBeanInfo(java.lang.Class,java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:374,1"
      Dst: "[java.beans.BeanInfo].getPropertyDescriptors()"
    - Src: "net.sf.cglib.core.ReflectUtils:378,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:381,1"
      Dst: "[java.beans.PropertyDescriptor].getReadMethod()"
    - Src: "net.sf.cglib.core.ReflectUtils:382,1"
      Dst: "[java.beans.PropertyDescriptor].getWriteMethod()"
    - Src: "net.sf.cglib.core.ReflectUtils:383,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:386,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.core.ReflectUtils:386,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.core.ReflectUtils:388,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.sf.cglib.core.CodeGenerationException"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.NullPointerException].getMessage()"
    - "[java.awt.HeadlessException:java.io.InvalidClassException:java.lang.Throwable:java.net.URISyntaxException:java.nio.file.FileSystemException:java.nio.file.InvalidPathException:java.util.regex.PatternSyntaxException:sun.nio.fs.UnixException].getMessage()"
    - "[java.lang.Class].getName()"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 23
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeGenerationException:25,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.core.CodeGenerationException:25,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.core.CodeGenerationException:25,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.sf.cglib.core.CodeGenerationException:25,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.CodeGenerationException:25,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: "[net.sf.cglib.core.ReflectUtils].getBeanSetters(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionDepth: 2
    returnType: "java.beans.PropertyDescriptor[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:368,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,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: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 373
    functionLinenumberEnd: 377
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,int)"
    - "[net.sf.cglib.core.CodeEmitter].skipArgs(int)"
    functionUses: 61
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:375,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].skipArgs(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:374,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,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: "[net.sf.cglib.core.CodeEmitter].skipArgs(int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSize()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:390"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:391,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    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: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 587
    functionLinenumberEnd: 592
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.Type)"
    functionUses: 31
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:588"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:591"
        BranchSideFuncs:
        - "emit_type(int,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:590"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:588,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.CodeEmitter:589,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 553
    functionLinenumberEnd: 561
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[org.objectweb.asm.Type].getInternalName()"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTypeInsn(int,java.lang.String)"
    functionUses: 4
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:554"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:557"
        BranchSideFuncs:
        - "getDescriptor()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:556"
        BranchSideFuncs:
        - "getInternalName()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:554,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:555,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.CodeEmitter:557,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "net.sf.cglib.core.CodeEmitter:559,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    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: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionDepth: 3
    returnType: "net.sf.cglib.core.MethodInfo"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member,int)"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.invoke.MemberName].getModifiers()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[java.lang.reflect.Member].getModifiers()"
    functionUses: 15
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:505,1"
      Dst: "[java.lang.reflect.Member].getModifiers()"
    - Src: "net.sf.cglib.core.ReflectUtils:505,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member,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: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member,int)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionDepth: 2
    returnType: "net.sf.cglib.core.MethodInfo"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Member"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.ReflectUtils$5].<init>(java.lang.reflect.Member,int,net.sf.cglib.core.Signature)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:481,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.core.ReflectUtils:482,1"
      Dst: "[net.sf.cglib.core.ReflectUtils$5].<init>(java.lang.reflect.Member,int,net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[java.lang.invoke.MemberName].getName()"
    - "[java.lang.reflect.Constructor].getName()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[org.objectweb.asm.Type].getMethodDescriptor(org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.reflect.Member].getName()"
    functionUses: 8
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:163"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:165"
        BranchSideFuncs:
        - "getName()"
        - "getMethodDescriptor(java.lang.reflect.Method)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:164"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:165"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:171"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "getTypes(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:170"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:164,1"
      Dst: "[java.lang.reflect.Member].getName()"
    - Src: "net.sf.cglib.core.ReflectUtils:164,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.ReflectUtils:164,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:166,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.sf.cglib.core.ReflectUtils:166,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:168,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.ReflectUtils:171,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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 333
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:325"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:328"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:327"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:329"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:330,1"
      Dst: "[org.objectweb.asm.Type].getType(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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ReflectUtils$5].<init>(java.lang.reflect.Member,int,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 483
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Member"
    - "int"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.MethodInfo].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$5:482,1"
      Dst: "[net.sf.cglib.core.MethodInfo].<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: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    functionUses: 17
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:867,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.core.CodeEmitter:867,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.core.CodeEmitter:867,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 851
    functionLinenumberEnd: 865
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.ReflectUtils$6].getModifiers()"
    - "[net.sf.cglib.core.ClassEmitter$1].getModifiers()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.core.ClassInfo].getModifiers()"
    functionUses: 2
    ICount: 25
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:855"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:857"
        BranchSideFuncs:
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:856"
        BranchSideFuncs:
        - "isStatic(int)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:857"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:859"
        BranchSideFuncs:
        - "invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:858"
        BranchSideFuncs:
        - "getModifiers()"
        - "isInterface(int)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:859"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:862"
        BranchSideFuncs:
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:861"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:852,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.core.CodeEmitter:853,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.core.CodeEmitter:854,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.CodeEmitter:855,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.core.CodeEmitter:855,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.CodeEmitter:856,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.CodeEmitter:857,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.core.CodeEmitter:857,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:858,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getModifiers()"
    - Src: "net.sf.cglib.core.CodeEmitter:858,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:858,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    - Src: "net.sf.cglib.core.CodeEmitter:860,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.CodeEmitter:862,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 510
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:508,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 709
    functionLinenumberEnd: 730
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.TypeUtils].getBoxedType(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getSize()"
    - "[net.sf.cglib.core.CodeEmitter].dup_x2()"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 8
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:710"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:729"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:728"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:711"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:714"
        BranchSideFuncs:
        - "aconst_null()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:713"
        BranchSideFuncs:
        - "getSize()"
        - "getBoxedType(org.objectweb.asm.Type)"
        - "new_instance(org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:716"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:722"
        BranchSideFuncs:
        - "swap()"
        - "dup_x1()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:710,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:712,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.core.CodeEmitter:714,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getBoxedType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:715,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:716,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    - Src: "net.sf.cglib.core.CodeEmitter:718,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x2()"
    - Src: "net.sf.cglib.core.CodeEmitter:720,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.CodeEmitter:723,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - Src: "net.sf.cglib.core.CodeEmitter:724,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.CodeEmitter:726,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.CodeEmitter:726,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 12
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:219,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.TypeUtils].getBoxedType(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    functionUses: 2
    ICount: 20
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:247,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    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: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 548
    functionLinenumberEnd: 551
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.Type)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:549,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].dup_x2()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:215,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].pop()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 19
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:210,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:214,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.Type].getMethodDescriptor(org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    functionUses: 31
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:38,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.Signature:38,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 322
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].getBoxedType(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionUses: 7
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:313"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:319"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:318"
        BranchSideFuncs:
        - "load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.EmitUtils:314"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:317"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:316"
        BranchSideFuncs:
        - "getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
        - "getBoxedType(org.objectweb.asm.Type)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:313,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:315,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:317,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getBoxedType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:317,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:319,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 461
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:459,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.MethodVisitorTee].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)"
    - "[org.objectweb.asm.Type].getInternalName()"
    - "[org.objectweb.asm.Type].getDescriptor()"
    functionUses: 6
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:469,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "net.sf.cglib.core.CodeEmitter:471,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.CodeEmitter:468,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    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: "[net.sf.cglib.core.EmitUtils].load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 344
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].isStaticHook()"
    - "[net.sf.cglib.core.ClassEmitter$3].isStaticHook()"
    - "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - "[net.sf.cglib.core.TypeUtils].escapeType(java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].isFieldDeclared(java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:324"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:328"
        BranchSideFuncs:
        - "emulateClassGetName(org.objectweb.asm.Type)"
        - "isFieldDeclared(java.lang.String)"
        - "escapeType(java.lang.String)"
        - "getClassEmitter()"
    - Branch String: "net.sf.cglib.core.EmitUtils:334"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:341"
        BranchSideFuncs:
        - "invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "getStaticHook()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "getClassType()"
        - "putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
        - "push(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:340"
        BranchSideFuncs:
        - "getfield(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:324,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].isStaticHook()"
    - Src: "net.sf.cglib.core.EmitUtils:326,1"
      Dst: "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:326,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:327,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:329,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - Src: "net.sf.cglib.core.EmitUtils:333,1"
      Dst: "[net.sf.cglib.core.TypeUtils].escapeType(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:333,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:334,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].isFieldDeclared(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:335,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:336,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - Src: "net.sf.cglib.core.EmitUtils:339,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.EmitUtils:339,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:341,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.CodeEmitter].isStaticHook()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 317
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[java.lang.String].replace(char,char)"
    - "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    functionUses: 4
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:313"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:316"
        BranchSideFuncs:
        - "getDescriptor()"
        - "replace(char,char)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:315"
        BranchSideFuncs:
        - "getClassName(org.objectweb.asm.Type)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:313,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:314,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.TypeUtils:314,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.TypeUtils:316,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getClassName()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 4
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:100"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:102"
        BranchSideFuncs:
        - "getDescriptor()"
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:101"
        BranchSideFuncs:
        - "isArray(org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.TypeUtils:102"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:105"
        BranchSideFuncs:
        - "getClassName(org.objectweb.asm.Type)"
        - "getComponentType(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:104"
        BranchSideFuncs:
        - "getClassName()"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:100,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:101,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.TypeUtils:101,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.TypeUtils:102,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:103,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:103,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:103,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:105,1"
      Dst: "[org.objectweb.asm.Type].getClassName()"
    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: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 338
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    functionUses: 23
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:336,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(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: "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "net.sf.cglib.core.ClassEmitter"
    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: "[net.sf.cglib.core.TypeUtils].escapeType(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 403
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 1
    ICount: 28
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:405"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:419"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:418"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:404,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.sf.cglib.core.TypeUtils:405,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.TypeUtils:406,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.sf.cglib.core.TypeUtils:408,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:416,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.sf.cglib.core.TypeUtils:419,1"
      Dst: "[java.lang.StringBuffer].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: 13
    CyclomaticComplexity: 9
  - functionName: "[net.sf.cglib.core.ClassEmitter].isFieldDeclared(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:198"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:197"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:198,1"
      Dst: "[java.util.Map].get(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: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 195
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].<init>(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[java.awt.RenderingHints].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.ClassVisitor].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 29
    ICount: 23
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:186"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:191"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:190"
        BranchSideFuncs:
        - "visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
        - "put(java.lang.Object,java.lang.Object)"
        - "getDescriptor()"
    - Branch String: "net.sf.cglib.core.ClassEmitter:187"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:194"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:184,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:185,1"
      Dst: "[net.sf.cglib.core.ClassEmitter$FieldInfo].<init>(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:187,1"
      Dst: "[net.sf.cglib.core.ClassEmitter$FieldInfo].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:188,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:191,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:192,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.ClassEmitter:192,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitField(int,java.lang.String,java.lang.String,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: 5
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ClassEmitter$FieldInfo].<init>(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$FieldInfo"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:215,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: "[net.sf.cglib.core.ClassEmitter$FieldInfo].equals(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$FieldInfo"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[sun.font.FontStrikeDesc].equals(java.lang.Object)"
    - "[java.awt.font.TextHitInfo].equals(java.lang.Object)"
    - "[java.awt.Insets].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.awt.datatransfer.MimeTypeParameterList].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[sun.java2d.loops.CompositeType].equals(java.lang.Object)"
    - "[java.awt.JobAttributes].equals(java.lang.Object)"
    - "[java.awt.font.FontRenderContext].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[sun.font.CoreMetrics].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[java.awt.AlphaComposite].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[net.sf.cglib.core.ClassInfo].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.MethodDelegate].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[java.awt.AWTKeyStroke].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$TransformKey].equals(java.lang.Object)"
    - "[java.beans.PropertyDescriptor].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[java.beans.IndexedPropertyDescriptor].equals(java.lang.Object)"
    - "[net.sf.cglib.proxy.CallbackHelper].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClass].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[net.sf.cglib.core.WeakCacheKey].equals(java.lang.Object)"
    - "[java.io.ObjectStreamClass$DeserializationConstructorsCache$Key].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[java.awt.PageAttributes].equals(java.lang.Object)"
    - "[sun.font.AttributeValues].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.awt.image.ColorModel].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[java.awt.Point].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[java.awt.font.NumericShaper].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.awt.geom.AffineTransform].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.awt.image.IndexColorModel].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[net.sf.cglib.core.DefaultNamingPolicy].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[java.awt.geom.Point2D].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[sun.font.FontLineMetrics].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[sun.java2d.pipe.Region].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[java.awt.geom.Rectangle2D].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastMember].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[sun.java2d.loops.SurfaceType].equals(java.lang.Object)"
    - "[java.awt.BasicStroke].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[java.lang.constant.DynamicConstantDesc].equals(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[java.awt.Dimension].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[java.awt.font.TransformAttribute].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[java.awt.datatransfer.DataFlavor].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[java.awt.Color].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[java.awt.DisplayMode].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[java.awt.MenuShortcut].equals(java.lang.Object)"
    - "[java.awt.Rectangle].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[java.awt.RenderingHints$Key].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[java.awt.RenderingHints].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[java.awt.datatransfer.MimeType].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[java.awt.Font].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    functionUses: 4
    ICount: 41
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:223"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:225"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:224"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:225"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:227"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:226"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:228"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:231"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:230"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:229"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:231"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:230"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:230"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:233"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:232"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:233"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:233"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:232"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:233"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:-1"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:233"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:235"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:234"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:235"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:237"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:236"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:235"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:237"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:229,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:230,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:235,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: 20
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.core.CodeEmitter].putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:463,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 427
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getFieldInfo(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    functionUses: 33
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:424"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:423"
        BranchSideFuncs:
        - "getClassType()"
        - "emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:422"
        BranchSideFuncs:
        - "getFieldInfo(java.lang.String)"
        - "isStatic(int)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:423,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getFieldInfo(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:424,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:425,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:425,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ClassEmitter].getFieldInfo(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionDepth: 1
    returnType: "net.sf.cglib.core.ClassEmitter$FieldInfo"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.objectweb.asm.Type].getClassName()"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:203"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:206"
        BranchSideFuncs:
        - "getClassType()"
        - "getClassName()"
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:202,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.ClassEmitter:204,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.ClassEmitter:204,1"
      Dst: "[org.objectweb.asm.Type].getClassName()"
    - Src: "net.sf.cglib.core.ClassEmitter:204,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:204,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    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: "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 826
    functionLinenumberEnd: 844
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].zero_or_null(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 19
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:827"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:841"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:840"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:828"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:843"
        BranchSideFuncs:
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
        - "dup()"
        - "zero_or_null(org.objectweb.asm.Type)"
        - "make_label()"
        - "ifnonnull(org.objectweb.asm.Label)"
        - "pop()"
        - "unbox(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:827,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:829,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.CodeEmitter:831,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.CodeEmitter:832,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:833,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.CodeEmitter:834,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].zero_or_null(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:835,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:836,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:837,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:841,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].dup()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 49
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:212,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].zero_or_null(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 821
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getSort()"
    - "[net.sf.cglib.core.CodeEmitter].push(double)"
    - "[net.sf.cglib.core.CodeEmitter].push(long)"
    - "[net.sf.cglib.core.CodeEmitter].push(float)"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:801"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:818"
        BranchSideFuncs:
        - "getSort()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:817"
        BranchSideFuncs:
        - "aconst_null()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:801,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:802,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "net.sf.cglib.core.CodeEmitter:804,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(double)"
    - Src: "net.sf.cglib.core.CodeEmitter:807,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(long)"
    - Src: "net.sf.cglib.core.CodeEmitter:810,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(float)"
    - Src: "net.sf.cglib.core.CodeEmitter:813,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.core.CodeEmitter:815,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(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: 9
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.core.CodeEmitter].push(double)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 334
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].DCONST(double)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[java.lang.Double].valueOf(double)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:328"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:329"
        BranchSideFuncs:
        - "DCONST(double)"
        - "visitInsn(int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:328"
        BranchSideFuncs:
        - "DCONST(double)"
        - "visitInsn(int)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:328"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:331"
        BranchSideFuncs:
        - "DCONST(double)"
        - "visitInsn(int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:330"
        BranchSideFuncs:
        - "valueOf(double)"
        - "visitLdcInsn(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:329,1"
      Dst: "[net.sf.cglib.core.TypeUtils].DCONST(double)"
    - Src: "net.sf.cglib.core.CodeEmitter:329,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:331,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.sf.cglib.core.CodeEmitter:331,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(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: "[net.sf.cglib.core.TypeUtils].DCONST(double)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 377
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:371"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:373"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:372"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:373"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:null"
        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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].push(long)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 319
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].LCONST(long)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[java.lang.Long].valueOf(long)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:313"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:314"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "LCONST(long)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:313"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "LCONST(long)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:313"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:316"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "LCONST(long)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:315"
        BranchSideFuncs:
        - "visitLdcInsn(java.lang.Object)"
        - "valueOf(long)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:314,1"
      Dst: "[net.sf.cglib.core.TypeUtils].LCONST(long)"
    - Src: "net.sf.cglib.core.CodeEmitter:314,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:316,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.sf.cglib.core.CodeEmitter:316,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(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: "[net.sf.cglib.core.TypeUtils].LCONST(long)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:349"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:351"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:350"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:351"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:null"
        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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].push(float)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].FCONST(float)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[java.lang.Float].valueOf(float)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:321"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:322"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "FCONST(float)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:321"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "FCONST(float)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:321"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:322"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "FCONST(float)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:321"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "FCONST(float)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:321"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:324"
        BranchSideFuncs:
        - "visitInsn(int)"
        - "FCONST(float)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:323"
        BranchSideFuncs:
        - "valueOf(float)"
        - "visitLdcInsn(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:322,1"
      Dst: "[net.sf.cglib.core.TypeUtils].FCONST(float)"
    - Src: "net.sf.cglib.core.CodeEmitter:322,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:324,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.sf.cglib.core.CodeEmitter:324,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(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: "[net.sf.cglib.core.TypeUtils].FCONST(float)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 367
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:359"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:361"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:360"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:361"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:363"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:362"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:363"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:null"
        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: 7
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 738
    functionLinenumberEnd: 774
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 8
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:767"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:770"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:769"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:741,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "net.sf.cglib.core.CodeEmitter:768,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:771,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.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: 12
    CyclomaticComplexity: 8
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].compatible(java.beans.PropertyDescriptor,java.beans.PropertyDescriptor)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.beans.PropertyDescriptor"
    - "java.beans.PropertyDescriptor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.beans.PropertyDescriptor].getPropertyType()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:165,1"
      Dst: "[java.beans.PropertyDescriptor].getPropertyType()"
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:165,1"
      Dst: "[java.lang.Class].isAssignableFrom(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: "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 139
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMaxs(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitEnd()"
    - "[net.sf.cglib.core.ClassEmitter].visitEnd()"
    - "[org.objectweb.asm.ClassVisitor].visitEnd()"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitEnd()"
    - "[org.objectweb.asm.ClassWriter].visitEnd()"
    functionUses: 18
    ICount: 22
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter:125"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:128"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter:125"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:128"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassEmitter:129"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter:137"
        BranchSideFuncs:
        - "return_value()"
        - "visitInsn(int)"
        - "end_method()"
        - "visitMaxs(int,int)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter:136"
        BranchSideFuncs:
        - "visitEnd()"
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:127,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - Src: "net.sf.cglib.core.ClassEmitter:130,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.core.ClassEmitter:131,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.core.ClassEmitter:132,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.ClassEmitter:133,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - Src: "net.sf.cglib.core.ClassEmitter:137,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitEnd()"
    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: "[net.sf.cglib.core.ClassEmitter].begin_static()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:180,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.beans.BeanCopier$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanCopier$Generator:169,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:277,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getConstructor(java.lang.Class,java.lang.Class[])"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.reflect.Constructor,java.lang.Object[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:281,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getConstructor(java.lang.Class,java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:281,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.reflect.Constructor,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: "[net.sf.cglib.core.ReflectUtils].getConstructor(java.lang.Class,java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 314
    functionDepth: 1
    returnType: "java.lang.reflect.Constructor"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:309,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:310,1"
      Dst: "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - Src: "net.sf.cglib.core.ReflectUtils:313,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 2
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.reflect.Constructor,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 304
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.AccessibleObject].isAccessible()"
    - "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 2
    ICount: 27
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:288"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:291"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:290"
        BranchSideFuncs:
        - "getTargetException()"
        - "newInstance(java.lang.Object[])"
        - "<init>(java.lang.Throwable)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:300"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:291"
        BranchSideFuncs:
        - "setAccessible(boolean)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:290"
        BranchSideFuncs:
        - "getTargetException()"
        - "newInstance(java.lang.Object[])"
        - "<init>(java.lang.Throwable)"
    - Branch String: "net.sf.cglib.core.ReflectUtils:300"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:303"
        BranchSideFuncs:
        - "setAccessible(boolean)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:286,1"
      Dst: "[java.lang.reflect.AccessibleObject].isAccessible()"
    - Src: "net.sf.cglib.core.ReflectUtils:289,1"
      Dst: "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - Src: "net.sf.cglib.core.ReflectUtils:291,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.sf.cglib.core.ReflectUtils:294,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.core.ReflectUtils:298,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    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: 1
  - functionName: "[net.sf.cglib.beans.BeanCopier$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.BeanCopier$Generator"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator$1].<init>(net.sf.cglib.util.StringSwitcher$Generator,net.sf.cglib.core.CodeEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator$1"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.util.StringSwitcher$Generator"
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:132,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: "[net.sf.cglib.util.StringSwitcher$Generator$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator$1"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 137
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].indexOf(java.lang.Object)"
    - "[java.util.ArrayList].indexOf(java.lang.Object)"
    - "[jaz.Zer].indexOf(java.lang.Object)"
    - "[java.util.Vector].indexOf(java.lang.Object)"
    - "[sun.awt.util.IdentityArrayList].indexOf(java.lang.Object)"
    - "[java.util.AbstractList].indexOf(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].indexOf(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.List].indexOf(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:134,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:134,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:135,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator$1].processDefault()"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator$1"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:138,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator$1:139,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:162,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].setTarget(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:167,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].setTargetClass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].setMethodName(java.lang.String)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].setInterface(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MethodDelegate$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:183,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.reflect.MethodDelegate$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:187,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.reflect.MethodDelegate$Generator].create()"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.reflect.MethodDelegate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.reflect.MethodDelegate$MethodDelegateKey].newInstance(java.lang.Class,java.lang.String,java.lang.Class)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:191,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:191,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:192,1"
      Dst: "[net.sf.cglib.reflect.MethodDelegate$MethodDelegateKey].newInstance(java.lang.Class,java.lang.String,java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:193,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.reflect.MethodDelegate$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[net.sf.cglib.reflect.MethodDelegate].newInstance(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:197,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:197,1"
      Dst: "[net.sf.cglib.reflect.MethodDelegate].newInstance(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: "[net.sf.cglib.reflect.MethodDelegate$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.MethodDelegate].newInstance(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:201,1"
      Dst: "[net.sf.cglib.reflect.MethodDelegate].newInstance(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: "[net.sf.cglib.reflect.MethodDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.reflect.MethodDelegate$Generator"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 266
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_getfield(java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].super_putfield(java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.Signature].toString()"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 3
    ICount: 88
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.MethodDelegate$Generator:207"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:211"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:210"
        BranchSideFuncs:
        - "isStatic(int)"
    - Branch String: "net.sf.cglib.reflect.MethodDelegate$Generator:214"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:211"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:210"
        BranchSideFuncs:
        - "isStatic(int)"
    - Branch String: "net.sf.cglib.reflect.MethodDelegate$Generator:214"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:218"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:217"
        BranchSideFuncs:
        - "getClassName()"
        - "getMethodInfo(java.lang.reflect.Member)"
        - "getModifiers()"
        - "null_constructor(net.sf.cglib.core.ClassEmitter)"
        - "getDeclaredMethods()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "getType(java.lang.Class)"
        - "<init>(org.objectweb.asm.ClassVisitor)"
    - Branch String: "net.sf.cglib.reflect.MethodDelegate$Generator:215"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:214"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "net.sf.cglib.reflect.MethodDelegate$Generator:232"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:235"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.MethodDelegate$Generator:234"
        BranchSideFuncs:
        - "super_putfield(java.lang.String,org.objectweb.asm.Type)"
        - "end_method()"
        - "getClassInfo()"
        - "invoke_constructor_this()"
        - "return_value()"
        - "checkcast(org.objectweb.asm.Type)"
        - "getSignature()"
        - "getType()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "super_getfield(java.lang.String,org.objectweb.asm.Type)"
        - "load_this()"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "dup2()"
        - "end_class()"
        - "begin_static()"
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "toString()"
        - "load_arg(int)"
        - "getfield(java.lang.String)"
        - "load_args()"
        - "new_instance_this()"
        - "dup()"
        - "putfield(java.lang.String)"
        - "push(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:205,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:206,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:206,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:207,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:207,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:208,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:211,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:213,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:213,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:215,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:218,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:222,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:224,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:220,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:226,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:227,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:230,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:235,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:236,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:237,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_getfield(java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:238,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:238,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:238,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:239,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:240,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:241,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:242,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:245,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:246,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:247,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:248,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:249,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:250,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:251,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_putfield(java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:252,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:258,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:259,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:259,1"
      Dst: "[net.sf.cglib.core.Signature].toString()"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:259,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:260,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MethodDelegate$Generator:264,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_class()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.NoSuchMethodException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 449
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInterface()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 3
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:441"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:444"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:443"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    - Branch String: "net.sf.cglib.core.ReflectUtils:445"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:448"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:447"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:441,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "net.sf.cglib.core.ReflectUtils:442,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:442,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:444,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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 956
    functionLinenumberEnd: 959
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.MethodInfo"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getExceptionTypes()"
    - "[net.sf.cglib.core.CodeEmitter$State].getExceptionTypes()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    functionUses: 8
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:957,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.EmitUtils:958,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    - Src: "net.sf.cglib.core.EmitUtils:956,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].super_getfield(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 437
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:435,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:435,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].load_args()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 368
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].load_args(int,int)"
    functionUses: 15
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:366,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args(int,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: "[net.sf.cglib.core.CodeEmitter].load_args(int,int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].skipArgs(int)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,int)"
    - "[org.objectweb.asm.Type].getSize()"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:381"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:380,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].skipArgs(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:383,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(org.objectweb.asm.Type,int)"
    - Src: "net.sf.cglib.core.CodeEmitter:384,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    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: "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 544
    functionLinenumberEnd: 547
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:545,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:545,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:491,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:491,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].super_putfield(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 438
    functionLinenumberEnd: 441
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:439,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:439,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.Signature].toString()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 9
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:58,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 433
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getFieldInfo(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    functionUses: 25
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:430"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:429"
        BranchSideFuncs:
        - "getClassType()"
        - "emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:428"
        BranchSideFuncs:
        - "getFieldInfo(java.lang.String)"
        - "isStatic(int)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:429,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getFieldInfo(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:430,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:431,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:431,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.reflect.FastConstructor].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Constructor)"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.reflect.FastClass"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[net.sf.cglib.reflect.FastClass].getIndex(java.lang.Class[])"
    - "[net.sf.cglib.reflect.FastMember].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Member,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastConstructor:24,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.sf.cglib.reflect.FastConstructor:24,1"
      Dst: "[net.sf.cglib.reflect.FastClass].getIndex(java.lang.Class[])"
    - Src: "net.sf.cglib.reflect.FastConstructor:24,1"
      Dst: "[net.sf.cglib.reflect.FastMember].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Member,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: "[net.sf.cglib.reflect.FastConstructor].getParameterTypes()"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastConstructor:28,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastConstructor].getExceptionTypes()"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getExceptionTypes()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastConstructor:32,1"
      Dst: "[java.lang.reflect.Constructor].getExceptionTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastConstructor].newInstance()"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClass].newInstance(int,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastConstructor:36,1"
      Dst: "[net.sf.cglib.reflect.FastClass].newInstance(int,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastConstructor].newInstance(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClass].newInstance(int,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastConstructor:40,1"
      Dst: "[net.sf.cglib.reflect.FastClass].newInstance(int,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastConstructor].getJavaConstructor()"
    functionSourceFile: "net.sf.cglib.reflect.FastConstructor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Constructor"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy].<init>(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DefaultGeneratorStrategy].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy:45,1"
      Dst: "[net.sf.cglib.core.DefaultGeneratorStrategy].<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: "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy].transform(net.sf.cglib.core.ClassGenerator)"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "net.sf.cglib.core.ClassGenerator"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].<init>(java.lang.Class)"
    - "[net.sf.cglib.transform.MethodFilterTransformer].<init>(net.sf.cglib.transform.MethodFilter,net.sf.cglib.transform.ClassTransformer)"
    - "[net.sf.cglib.transform.TransformingClassGenerator].<init>(net.sf.cglib.core.ClassGenerator,net.sf.cglib.transform.ClassTransformer)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy:56,1"
      Dst: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].<init>(java.lang.Class)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy:57,1"
      Dst: "[net.sf.cglib.transform.MethodFilterTransformer].<init>(net.sf.cglib.transform.MethodFilter,net.sf.cglib.transform.ClassTransformer)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy:58,1"
      Dst: "[net.sf.cglib.transform.TransformingClassGenerator].<init>(net.sf.cglib.core.ClassGenerator,net.sf.cglib.transform.ClassTransformer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].<init>(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[java.lang.Class].getConstructors()"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:32"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:39"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:38"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:34"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:28"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:27"
        BranchSideFuncs:
        - "<init>()"
        - "getConstructors()"
        - "getType(java.lang.Class)"
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:34"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:28"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:27"
        BranchSideFuncs:
        - "<init>()"
        - "getConstructors()"
        - "getType(java.lang.Class)"
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:39"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:41"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:28,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:29,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:31,1"
      Dst: "[java.lang.Class].getConstructors()"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:33,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:34,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:40,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:40,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 9
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.transform.MethodFilterTransformer].<init>(net.sf.cglib.transform.MethodFilter,net.sf.cglib.transform.ClassTransformer)"
    functionSourceFile: "net.sf.cglib.transform.MethodFilterTransformer"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.MethodFilter"
    - "net.sf.cglib.transform.ClassTransformer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassTransformer].<init>()"
    - "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodFilterTransformer:25,1"
      Dst: "[net.sf.cglib.transform.AbstractClassTransformer].<init>()"
    - Src: "net.sf.cglib.transform.MethodFilterTransformer:28,1"
      Dst: "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.TransformingClassGenerator].<init>(net.sf.cglib.core.ClassGenerator,net.sf.cglib.transform.ClassTransformer)"
    functionSourceFile: "net.sf.cglib.transform.TransformingClassGenerator"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassGenerator"
    - "net.sf.cglib.transform.ClassTransformer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.TransformingClassGenerator:26,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: "[net.sf.cglib.transform.impl.AddPropertyTransformer].<init>(java.util.Map)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddPropertyTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - "[java.util.Map].size()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddPropertyTransformer:31"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddPropertyTransformer:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:27,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:28,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:29,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:29,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:32,1"
      Dst: "[java.util.Map].get(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: "[net.sf.cglib.transform.impl.AddPropertyTransformer].<init>(java.lang.String[],org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.AddPropertyTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:36,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<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: "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    functionSourceFile: "net.sf.cglib.transform.impl.AddPropertyTransformer"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.core.EmitUtils].add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionUses: 11
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddPropertyTransformer:42"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddPropertyTransformer:45"
        BranchSideFuncs:
        - "add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
      - BranchSide: "net.sf.cglib.transform.impl.AddPropertyTransformer:44"
        BranchSideFuncs:
        - "end_class()"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:42,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:42,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:43,1"
      Dst: "[net.sf.cglib.core.EmitUtils].add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AddPropertyTransformer:45,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.EmitUtils].add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 875
    functionLinenumberEnd: 882
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.lang.String[]"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].add_property(net.sf.cglib.core.ClassEmitter,java.lang.String,org.objectweb.asm.Type,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:876"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:880"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:877,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:878,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:879,1"
      Dst: "[net.sf.cglib.core.EmitUtils].add_property(net.sf.cglib.core.ClassEmitter,java.lang.String,org.objectweb.asm.Type,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: "[net.sf.cglib.core.EmitUtils].add_property(net.sf.cglib.core.ClassEmitter,java.lang.String,org.objectweb.asm.Type,java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 883
    functionLinenumberEnd: 907
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 27
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:884,1"
      Dst: "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:886,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:886,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.EmitUtils:886,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.EmitUtils:891,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.core.EmitUtils:892,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:893,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.core.EmitUtils:894,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.core.EmitUtils:902,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.core.EmitUtils:903,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(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: "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 97
    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.String].substring(int)"
    - "[java.lang.Character].toUpperCase(char)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(char,java.lang.String)"
    functionUses: 3
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:93"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:94"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:93"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:93"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:96"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:95"
        BranchSideFuncs:
        - "toUpperCase(char)"
        - "substring(int)"
        - "charAt(int)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:93,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.TypeUtils:96,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.sf.cglib.core.TypeUtils:96,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "net.sf.cglib.core.TypeUtils:96,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.sf.cglib.core.TypeUtils:96,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(char,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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData].<init>(java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[net.sf.cglib.core.internal.LoadingCache].<init>(net.sf.cglib.core.internal.Function,net.sf.cglib.core.internal.Function)"
    functionUses: 1
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:92"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:91"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>(net.sf.cglib.core.internal.Function,net.sf.cglib.core.internal.Function)"
        - "<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:88,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:56,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:76,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:90,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:92,1"
      Dst: "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:93,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:100,1"
      Dst: "[net.sf.cglib.core.internal.LoadingCache].<init>(net.sf.cglib.core.internal.Function,net.sf.cglib.core.internal.Function)"
    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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData].getClassLoader()"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.ref.CleanerImpl$WeakCleanableRef].get()"
    - "[java.lang.ref.Reference].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:104,1"
      Dst: "[java.lang.ref.Reference].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData].reserveName(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:108,1"
      Dst: "[java.util.Set].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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData].getUniqueNamePredicate()"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "net.sf.cglib.core.Predicate"
    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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData].get(net.sf.cglib.core.AbstractClassGenerator,boolean)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 121
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[net.sf.cglib.proxy.Enhancer].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[net.sf.cglib.core.internal.LoadingCache].get(java.lang.Object)"
    - "[net.sf.cglib.proxy.Enhancer].unwrapCachedValue(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator].unwrapCachedValue(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:116"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:119"
        BranchSideFuncs:
        - "generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
      - BranchSide: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:118"
        BranchSideFuncs:
        - "unwrapCachedValue(java.lang.Object)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:117,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:119,1"
      Dst: "[net.sf.cglib.core.internal.LoadingCache].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData:120,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].unwrapCachedValue(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: "[net.sf.cglib.core.internal.LoadingCache].get(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].apply(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].apply(java.lang.Object)"
    - "[net.sf.cglib.core.internal.LoadingCache$1].apply(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.internal.LoadingCache].createEntry(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.core.internal.Function].apply(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:34"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:33"
        BranchSideFuncs:
        - "createEntry(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:34"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:33"
        BranchSideFuncs:
        - "createEntry(java.lang.Object,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache:28,1"
      Dst: "[net.sf.cglib.core.internal.Function].apply(java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:29,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:34,1"
      Dst: "[net.sf.cglib.core.internal.LoadingCache].createEntry(java.lang.Object,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: "[net.sf.cglib.core.internal.LoadingCache].createEntry(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.FutureTask].<init>(java.util.concurrent.Callable)"
    - "[net.sf.cglib.core.internal.LoadingCache$2].<init>(net.sf.cglib.core.internal.LoadingCache,java.lang.Object)"
    - "[java.util.Map].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.FutureTask].run()"
    - "[java.util.concurrent.FutureTask].get()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Throwable].getCause()"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 44
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:51"
        BranchSideFuncs:
        - "<init>(java.util.concurrent.Callable)"
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
        - "<init>(net.sf.cglib.core.internal.LoadingCache,java.lang.Object)"
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:58"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:61"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:65"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:64"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:76"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:71"
        BranchSideFuncs:
        - "getCause()"
        - "get()"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:70"
        BranchSideFuncs:
        - "getCause()"
        - "get()"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.sf.cglib.core.internal.LoadingCache:81"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:84"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.internal.LoadingCache:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache:52,1"
      Dst: "[net.sf.cglib.core.internal.LoadingCache$2].<init>(net.sf.cglib.core.internal.LoadingCache,java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:52,1"
      Dst: "[java.util.concurrent.FutureTask].<init>(java.util.concurrent.Callable)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:57,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:61,1"
      Dst: "[java.util.concurrent.FutureTask].run()"
    - Src: "net.sf.cglib.core.internal.LoadingCache:71,1"
      Dst: "[java.util.concurrent.FutureTask].get()"
    - Src: "net.sf.cglib.core.internal.LoadingCache:73,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.sf.cglib.core.internal.LoadingCache:75,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "net.sf.cglib.core.internal.LoadingCache:82,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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 15
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.internal.LoadingCache$2].<init>(net.sf.cglib.core.internal.LoadingCache,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache$2"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.internal.LoadingCache"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache$2: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: "[net.sf.cglib.core.ReflectUtils$4].run()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$4"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getProtectionDomain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$4:147,1"
      Dst: "[java.lang.Class].getProtectionDomain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils$5].<init>()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$5"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$5:261,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: "[net.sf.cglib.core.EmitUtils$5].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$5"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].hashCode()"
    - "[java.util.AbstractSet].hashCode()"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.beans.PropertyDescriptor].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.security.CodeSource].hashCode()"
    - "[java.math.MathContext].hashCode()"
    - "[java.awt.PageAttributes$ColorType].hashCode()"
    - "[java.time.zone.ZoneOffsetTransitionRule].hashCode()"
    - "[java.nio.DoubleBuffer].hashCode()"
    - "[java.nio.file.attribute.FileTime].hashCode()"
    - "[java.awt.JobAttributes$DialogType].hashCode()"
    - "[java.lang.invoke.MethodType].hashCode()"
    - "[java.text.ParsePosition].hashCode()"
    - "[java.awt.Dimension].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.util.AbstractMap].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[java.util.AbstractList].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[java.awt.PageAttributes$OriginType].hashCode()"
    - "[java.nio.charset.Charset].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[java.text.DateFormat].hashCode()"
    - "[java.time.chrono.AbstractChronology].hashCode()"
    - "[java.util.jar.Manifest].hashCode()"
    - "[java.lang.Thread$WeakClassKey].hashCode()"
    - "[java.net.SocketPermission].hashCode()"
    - "[java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    - "[java.awt.Insets].hashCode()"
    - "[java.awt.PageAttributes].hashCode()"
    - "[java.net.InterfaceAddress].hashCode()"
    - "[java.lang.reflect.Parameter].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[java.text.DecimalFormatSymbols].hashCode()"
    - "[java.text.MessageFormat].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Version].hashCode()"
    - "[java.awt.JobAttributes$DefaultSelectionType].hashCode()"
    - "[java.lang.invoke.LambdaForm].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap].hashCode()"
    - "[sun.util.calendar.Era].hashCode()"
    - "[java.awt.datatransfer.DataFlavor].hashCode()"
    - "[java.nio.LongBuffer].hashCode()"
    - "[sun.nio.fs.UnixFileStore].hashCode()"
    - "[java.util.OptionalLong].hashCode()"
    - "[java.awt.font.TextHitInfo].hashCode()"
    - "[net.sf.cglib.reflect.FastMember].hashCode()"
    - "[java.util.IdentityHashMap].hashCode()"
    - "[sun.java2d.loops.SurfaceType].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[java.awt.geom.Point2D].hashCode()"
    - "[java.awt.font.NumericShaper].hashCode()"
    - "[java.text.NumberFormat].hashCode()"
    - "[java.lang.Runtime$Version].hashCode()"
    - "[java.awt.JobAttributes$SidesType].hashCode()"
    - "[java.time.OffsetDateTime].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.nio.FloatBuffer].hashCode()"
    - "[java.awt.JobAttributes$MultipleDocumentHandlingType].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Exports].hashCode()"
    - "[java.util.HashMap$Node].hashCode()"
    - "[java.util.BitSet].hashCode()"
    - "[java.util.Hashtable].hashCode()"
    - "[java.io.File].hashCode()"
    - "[sun.font.FontLineMetrics].hashCode()"
    - "[java.time.zone.ZoneOffsetTransition].hashCode()"
    - "[java.lang.invoke.LambdaForm$Name].hashCode()"
    - "[java.awt.JobAttributes].hashCode()"
    - "[java.time.ZonedDateTime].hashCode()"
    - "[java.awt.geom.Rectangle2D].hashCode()"
    - "[java.awt.JobAttributes$DestinationType].hashCode()"
    - "[java.awt.geom.AffineTransform].hashCode()"
    - "[java.time.LocalDateTime].hashCode()"
    - "[java.security.CodeSigner].hashCode()"
    - "[java.net.NetworkInterface].hashCode()"
    - "[java.security.Provider$ServiceKey].hashCode()"
    - "[java.awt.BufferCapabilities$FlipContents].hashCode()"
    - "[java.lang.ProcessHandleImpl].hashCode()"
    - "[java.security.cert.CertPath].hashCode()"
    - "[java.nio.IntBuffer].hashCode()"
    - "[java.net.Inet6Address].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[java.awt.AttributeValue].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[java.util.Properties].hashCode()"
    - "[java.time.OffsetTime].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[java.time.format.DecimalStyle].hashCode()"
    - "[sun.util.locale.LocaleExtensions].hashCode()"
    - "[java.awt.AlphaComposite].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].hashCode()"
    - "[java.lang.module.ModuleDescriptor].hashCode()"
    - "[java.lang.Character$Subset].hashCode()"
    - "[java.util.Calendar].hashCode()"
    - "[java.lang.StackTraceElement].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[java.util.zip.ZipFile$Source$Key].hashCode()"
    - "[jdk.internal.misc.Signal].hashCode()"
    - "[sun.nio.fs.UnixPath].hashCode()"
    - "[java.nio.ByteBuffer].hashCode()"
    - "[java.time.Duration].hashCode()"
    - "[java.awt.font.FontRenderContext].hashCode()"
    - "[java.awt.AWTKeyStroke].hashCode()"
    - "[java.time.Period].hashCode()"
    - "[net.sf.cglib.reflect.MethodDelegate].hashCode()"
    - "[java.util.Optional].hashCode()"
    - "[java.util.TreeMap$Entry].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$TransformKey].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[java.util.OptionalInt].hashCode()"
    - "[java.net.Inet4Address].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].hashCode()"
    - "[java.util.WeakHashMap$Entry].hashCode()"
    - "[net.sf.cglib.beans.BeanMap].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[java.awt.RenderingHints$Key].hashCode()"
    - "[java.util.zip.ZipEntry].hashCode()"
    - "[java.beans.IndexedPropertyDescriptor].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].hashCode()"
    - "[java.awt.PageAttributes$OrientationRequestedType].hashCode()"
    - "[java.awt.RenderingHints].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[java.awt.BasicStroke].hashCode()"
    - "[java.awt.PageAttributes$PrintQualityType].hashCode()"
    - "[java.awt.DisplayMode].hashCode()"
    - "[java.awt.image.ColorModel].hashCode()"
    - "[java.time.ZoneOffset].hashCode()"
    - "[java.awt.MenuShortcut].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[java.util.jar.Attributes$Name].hashCode()"
    - "[net.sf.cglib.proxy.CallbackHelper].hashCode()"
    - "[java.time.temporal.ValueRange].hashCode()"
    - "[net.sf.cglib.core.Signature].hashCode()"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].hashCode()"
    - "[java.time.LocalDate].hashCode()"
    - "[net.sf.cglib.core.WeakCacheKey].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[net.sf.cglib.reflect.FastClass].hashCode()"
    - "[java.security.Timestamp].hashCode()"
    - "[java.lang.module.ResolvedModule].hashCode()"
    - "[java.util.Hashtable$Entry].hashCode()"
    - "[java.util.jar.Attributes].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[javax.security.auth.Subject].hashCode()"
    - "[java.awt.image.IndexColorModel].hashCode()"
    - "[java.net.Proxy].hashCode()"
    - "[java.util.Date].hashCode()"
    - "[java.awt.Font].hashCode()"
    - "[java.util.ResourceBundle$CacheKey].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Requires].hashCode()"
    - "[sun.util.calendar.CalendarDate].hashCode()"
    - "[java.awt.datatransfer.MimeType].hashCode()"
    - "[net.sf.cglib.core.MethodInfo].hashCode()"
    - "[java.text.DateFormatSymbols].hashCode()"
    - "[java.io.ObjectStreamClass$DeserializationConstructorsCache$Key].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Opens].hashCode()"
    - "[sun.font.CoreMetrics].hashCode()"
    - "[java.text.FieldPosition].hashCode()"
    - "[java.util.PropertyPermission].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    - "[sun.nio.ch.FileKey].hashCode()"
    - "[java.time.zone.ZoneRules].hashCode()"
    - "[java.lang.constant.DynamicConstantDesc].hashCode()"
    - "[java.time.Instant].hashCode()"
    - "[sun.util.locale.BaseLocale].hashCode()"
    - "[java.security.cert.Certificate].hashCode()"
    - "[java.io.FilePermission].hashCode()"
    - "[java.util.Vector].hashCode()"
    - "[java.util.OptionalDouble].hashCode()"
    - "[sun.java2d.loops.CompositeType].hashCode()"
    - "[java.security.AllPermission].hashCode()"
    - "[java.awt.font.TransformAttribute].hashCode()"
    - "[java.net.Inet6Address$Inet6AddressHolder].hashCode()"
    - "[java.math.BigDecimal].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[java.net.HttpCookie].hashCode()"
    - "[java.time.Clock].hashCode()"
    - "[sun.font.AttributeValues].hashCode()"
    - "[net.sf.cglib.core.DefaultNamingPolicy].hashCode()"
    - "[java.text.AttributedCharacterIterator$Attribute].hashCode()"
    - "[java.lang.ProcessBuilder$Redirect].hashCode()"
    - "[sun.font.FontStrikeDesc].hashCode()"
    - "[java.lang.Package].hashCode()"
    - "[java.security.AccessControlContext].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Provides].hashCode()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].hashCode()"
    - "[java.nio.ShortBuffer].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[sun.java2d.pipe.Region].hashCode()"
    - "[java.util.Locale].hashCode()"
    - "[java.net.InetAddress].hashCode()"
    - "[javax.crypto.CryptoPermission].hashCode()"
    - "[java.awt.Color].hashCode()"
    - "[java.net.URI].hashCode()"
    - "[java.awt.PageAttributes$MediaType].hashCode()"
    - "[net.sf.cglib.core.ClassInfo].hashCode()"
    - "[java.time.LocalTime].hashCode()"
    - "[java.security.BasicPermission].hashCode()"
    - "[java.net.URL].hashCode()"
    - "[java.time.ZoneId].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[java.awt.datatransfer.MimeTypeParameterList].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 212
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$5:263,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "net.sf.cglib.core.EmitUtils$5:263,1"
      Dst: "[java.lang.Integer].valueOf(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: "[net.sf.cglib.util.ParallelSorter$DoubleComparer].<init>(double[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$DoubleComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$DoubleComparer:233,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: "[net.sf.cglib.util.ParallelSorter$DoubleComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$DoubleComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorter$DoubleComparer:237"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$DoubleComparer:234"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.util.ParallelSorter$DoubleComparer:237"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$DoubleComparer:234"
        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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.beans.BulkBeanException].<init>(java.lang.String,int)"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanException"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanException:26,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: "[net.sf.cglib.beans.BulkBeanException].<init>(java.lang.Throwable,int)"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanException:31,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.sf.cglib.beans.BulkBeanException:31,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: "[net.sf.cglib.beans.BulkBeanException].getIndex()"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanException"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBeanException].getCause()"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanException"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.Throwable"
    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: "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Object].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[java.awt.RenderingHints].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:203"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:206"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "next()"
        - "valueOf(int)"
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:198,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:203,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:203,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:204,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:204,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:204,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:209,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:209,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:209,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:210,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processDefault()"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:214,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback:215,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$2].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$2"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.reflect.FastClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$2:130,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: "[net.sf.cglib.reflect.FastClassEmitter$2].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$2"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.Signature].toString()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$2:132,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$2:132,1"
      Dst: "[net.sf.cglib.core.Signature].toString()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$2:133,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$2:133,1"
      Dst: "[java.lang.String].substring(int,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: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].<init>(net.sf.cglib.transform.impl.UndeclaredThrowableTransformer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type[])"
    functionUses: 33
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:45"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:46"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:45"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:45"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:48"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:47"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.transform.impl.UndeclaredThrowableTransformer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type[])"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:44,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:45,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:45,1"
      Dst: "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer:48,1"
      Dst: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].<init>(net.sf.cglib.transform.impl.UndeclaredThrowableTransformer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].<init>(net.sf.cglib.transform.impl.UndeclaredThrowableTransformer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].begin_block()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1:48,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1:51,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].begin_block()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.LocalVariablesSorter].<init>(net.sf.cglib.core.LocalVariablesSorter)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:112,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].<init>(net.sf.cglib.core.LocalVariablesSorter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.LocalVariablesSorter].<init>(net.sf.cglib.core.LocalVariablesSorter)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.LocalVariablesSorter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:77,1"
      Dst: "[org.objectweb.asm.MethodVisitor].<init>(int,org.objectweb.asm.MethodVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].begin_block()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 3
    returnType: "net.sf.cglib.core.Block"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Block].<init>(net.sf.cglib.core.CodeEmitter)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:142,1"
      Dst: "[net.sf.cglib.core.Block].<init>(net.sf.cglib.core.CodeEmitter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.Block].<init>(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.core.Block"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.sf.cglib.core.CodeEmitter].mark()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Block:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.Block:28,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].mark()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 680
    functionDepth: 1
    returnType: "org.objectweb.asm.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLabel(org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitLabel(org.objectweb.asm.Label)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:677,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.CodeEmitter:678,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.core.ClassEmitter$FieldInfo].hashCode()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$FieldInfo"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.util.ArrayList].hashCode()"
    - "[java.util.AbstractSet].hashCode()"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.beans.PropertyDescriptor].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.security.CodeSource].hashCode()"
    - "[java.math.MathContext].hashCode()"
    - "[java.awt.PageAttributes$ColorType].hashCode()"
    - "[java.time.zone.ZoneOffsetTransitionRule].hashCode()"
    - "[java.nio.DoubleBuffer].hashCode()"
    - "[java.nio.file.attribute.FileTime].hashCode()"
    - "[java.awt.JobAttributes$DialogType].hashCode()"
    - "[java.lang.invoke.MethodType].hashCode()"
    - "[java.text.ParsePosition].hashCode()"
    - "[java.awt.Dimension].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.util.AbstractMap].hashCode()"
    - "[java.util.AbstractList].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[java.awt.PageAttributes$OriginType].hashCode()"
    - "[java.nio.charset.Charset].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[java.text.DateFormat].hashCode()"
    - "[java.time.chrono.AbstractChronology].hashCode()"
    - "[java.util.jar.Manifest].hashCode()"
    - "[java.lang.Thread$WeakClassKey].hashCode()"
    - "[java.net.SocketPermission].hashCode()"
    - "[java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    - "[java.awt.Insets].hashCode()"
    - "[java.awt.PageAttributes].hashCode()"
    - "[java.net.InterfaceAddress].hashCode()"
    - "[java.lang.reflect.Parameter].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[java.text.DecimalFormatSymbols].hashCode()"
    - "[java.text.MessageFormat].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Version].hashCode()"
    - "[java.awt.JobAttributes$DefaultSelectionType].hashCode()"
    - "[java.lang.invoke.LambdaForm].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap].hashCode()"
    - "[sun.util.calendar.Era].hashCode()"
    - "[java.awt.datatransfer.DataFlavor].hashCode()"
    - "[java.nio.LongBuffer].hashCode()"
    - "[sun.nio.fs.UnixFileStore].hashCode()"
    - "[java.util.OptionalLong].hashCode()"
    - "[java.awt.font.TextHitInfo].hashCode()"
    - "[net.sf.cglib.reflect.FastMember].hashCode()"
    - "[java.util.IdentityHashMap].hashCode()"
    - "[sun.java2d.loops.SurfaceType].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[java.awt.geom.Point2D].hashCode()"
    - "[java.awt.font.NumericShaper].hashCode()"
    - "[java.text.NumberFormat].hashCode()"
    - "[java.lang.Runtime$Version].hashCode()"
    - "[java.awt.JobAttributes$SidesType].hashCode()"
    - "[java.time.OffsetDateTime].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.nio.FloatBuffer].hashCode()"
    - "[java.awt.JobAttributes$MultipleDocumentHandlingType].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Exports].hashCode()"
    - "[java.util.HashMap$Node].hashCode()"
    - "[java.util.BitSet].hashCode()"
    - "[java.util.Hashtable].hashCode()"
    - "[java.io.File].hashCode()"
    - "[sun.font.FontLineMetrics].hashCode()"
    - "[java.time.zone.ZoneOffsetTransition].hashCode()"
    - "[java.lang.invoke.LambdaForm$Name].hashCode()"
    - "[java.awt.JobAttributes].hashCode()"
    - "[java.time.ZonedDateTime].hashCode()"
    - "[java.awt.geom.Rectangle2D].hashCode()"
    - "[java.awt.JobAttributes$DestinationType].hashCode()"
    - "[java.awt.geom.AffineTransform].hashCode()"
    - "[java.time.LocalDateTime].hashCode()"
    - "[java.security.CodeSigner].hashCode()"
    - "[java.net.NetworkInterface].hashCode()"
    - "[java.security.Provider$ServiceKey].hashCode()"
    - "[java.awt.BufferCapabilities$FlipContents].hashCode()"
    - "[java.lang.ProcessHandleImpl].hashCode()"
    - "[java.security.cert.CertPath].hashCode()"
    - "[java.nio.IntBuffer].hashCode()"
    - "[java.net.Inet6Address].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[java.awt.AttributeValue].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[java.util.Properties].hashCode()"
    - "[java.time.OffsetTime].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[java.time.format.DecimalStyle].hashCode()"
    - "[sun.util.locale.LocaleExtensions].hashCode()"
    - "[java.awt.AlphaComposite].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].hashCode()"
    - "[java.lang.module.ModuleDescriptor].hashCode()"
    - "[java.lang.Character$Subset].hashCode()"
    - "[java.util.Calendar].hashCode()"
    - "[java.lang.StackTraceElement].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[java.util.zip.ZipFile$Source$Key].hashCode()"
    - "[jdk.internal.misc.Signal].hashCode()"
    - "[sun.nio.fs.UnixPath].hashCode()"
    - "[java.nio.ByteBuffer].hashCode()"
    - "[java.time.Duration].hashCode()"
    - "[java.awt.font.FontRenderContext].hashCode()"
    - "[java.awt.AWTKeyStroke].hashCode()"
    - "[java.time.Period].hashCode()"
    - "[net.sf.cglib.reflect.MethodDelegate].hashCode()"
    - "[java.util.Optional].hashCode()"
    - "[java.util.TreeMap$Entry].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$TransformKey].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[java.util.OptionalInt].hashCode()"
    - "[java.net.Inet4Address].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].hashCode()"
    - "[java.util.WeakHashMap$Entry].hashCode()"
    - "[net.sf.cglib.beans.BeanMap].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[java.awt.RenderingHints$Key].hashCode()"
    - "[java.util.zip.ZipEntry].hashCode()"
    - "[java.beans.IndexedPropertyDescriptor].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].hashCode()"
    - "[java.awt.PageAttributes$OrientationRequestedType].hashCode()"
    - "[java.awt.RenderingHints].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[java.awt.BasicStroke].hashCode()"
    - "[java.awt.PageAttributes$PrintQualityType].hashCode()"
    - "[java.awt.DisplayMode].hashCode()"
    - "[java.awt.image.ColorModel].hashCode()"
    - "[java.time.ZoneOffset].hashCode()"
    - "[java.awt.MenuShortcut].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[java.util.jar.Attributes$Name].hashCode()"
    - "[net.sf.cglib.proxy.CallbackHelper].hashCode()"
    - "[java.time.temporal.ValueRange].hashCode()"
    - "[net.sf.cglib.core.Signature].hashCode()"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].hashCode()"
    - "[java.time.LocalDate].hashCode()"
    - "[net.sf.cglib.core.WeakCacheKey].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[net.sf.cglib.reflect.FastClass].hashCode()"
    - "[java.security.Timestamp].hashCode()"
    - "[java.lang.module.ResolvedModule].hashCode()"
    - "[java.util.Hashtable$Entry].hashCode()"
    - "[java.util.jar.Attributes].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[javax.security.auth.Subject].hashCode()"
    - "[java.awt.image.IndexColorModel].hashCode()"
    - "[java.net.Proxy].hashCode()"
    - "[java.util.Date].hashCode()"
    - "[java.awt.Font].hashCode()"
    - "[java.util.ResourceBundle$CacheKey].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Requires].hashCode()"
    - "[sun.util.calendar.CalendarDate].hashCode()"
    - "[java.awt.datatransfer.MimeType].hashCode()"
    - "[net.sf.cglib.core.MethodInfo].hashCode()"
    - "[java.text.DateFormatSymbols].hashCode()"
    - "[java.io.ObjectStreamClass$DeserializationConstructorsCache$Key].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Opens].hashCode()"
    - "[sun.font.CoreMetrics].hashCode()"
    - "[java.text.FieldPosition].hashCode()"
    - "[java.util.PropertyPermission].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    - "[sun.nio.ch.FileKey].hashCode()"
    - "[java.time.zone.ZoneRules].hashCode()"
    - "[java.lang.constant.DynamicConstantDesc].hashCode()"
    - "[java.time.Instant].hashCode()"
    - "[sun.util.locale.BaseLocale].hashCode()"
    - "[java.security.cert.Certificate].hashCode()"
    - "[java.io.FilePermission].hashCode()"
    - "[java.util.Vector].hashCode()"
    - "[java.util.OptionalDouble].hashCode()"
    - "[sun.java2d.loops.CompositeType].hashCode()"
    - "[java.security.AllPermission].hashCode()"
    - "[java.awt.font.TransformAttribute].hashCode()"
    - "[java.net.Inet6Address$Inet6AddressHolder].hashCode()"
    - "[java.math.BigDecimal].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[java.net.HttpCookie].hashCode()"
    - "[java.time.Clock].hashCode()"
    - "[sun.font.AttributeValues].hashCode()"
    - "[net.sf.cglib.core.DefaultNamingPolicy].hashCode()"
    - "[java.text.AttributedCharacterIterator$Attribute].hashCode()"
    - "[java.lang.ProcessBuilder$Redirect].hashCode()"
    - "[sun.font.FontStrikeDesc].hashCode()"
    - "[java.lang.Package].hashCode()"
    - "[java.security.AccessControlContext].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Provides].hashCode()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].hashCode()"
    - "[java.nio.ShortBuffer].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[sun.java2d.pipe.Region].hashCode()"
    - "[java.util.Locale].hashCode()"
    - "[java.net.InetAddress].hashCode()"
    - "[javax.crypto.CryptoPermission].hashCode()"
    - "[java.awt.Color].hashCode()"
    - "[java.net.URI].hashCode()"
    - "[java.awt.PageAttributes$MediaType].hashCode()"
    - "[net.sf.cglib.core.ClassInfo].hashCode()"
    - "[java.time.LocalTime].hashCode()"
    - "[java.security.BasicPermission].hashCode()"
    - "[java.net.URL].hashCode()"
    - "[java.time.ZoneId].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[java.awt.datatransfer.MimeTypeParameterList].hashCode()"
    functionUses: 11
    ICount: 16
    EdgeCount: 213
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter$FieldInfo:241"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$FieldInfo:240"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:241,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:241,1"
      Dst: "[org.objectweb.asm.Type].hashCode()"
    - Src: "net.sf.cglib.core.ClassEmitter$FieldInfo:241,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.util.ParallelSorter$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:259,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.ParallelSorter$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.ParallelSorter$Generator].setArrays(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.ParallelSorter$Generator].create()"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "net.sf.cglib.util.ParallelSorter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassesKey].create(java.lang.Object[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:271,1"
      Dst: "[net.sf.cglib.core.ClassesKey].create(java.lang.Object[])"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:271,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.core.ClassesKey].create(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.ClassesKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassesKey].classNames(java.lang.Object[])"
    - "[net.sf.cglib.core.ClassesKey$Key].newInstance(java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassesKey:29,1"
      Dst: "[net.sf.cglib.core.ClassesKey].classNames(java.lang.Object[])"
    - Src: "net.sf.cglib.core.ClassesKey:29,1"
      Dst: "[net.sf.cglib.core.ClassesKey$Key].newInstance(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: "[net.sf.cglib.core.ClassesKey].classNames(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.ClassesKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassesKey:33"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassesKey:36"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassesKey:35"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassesKey:37"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassesKey:44"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassesKey:43"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassesKey:39"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassesKey:36"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassesKey:35"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassesKey:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassesKey:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassesKey:40,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.core.ClassesKey:41,1"
      Dst: "[java.lang.Class].getName()"
    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: 4
  - functionName: "[net.sf.cglib.util.ParallelSorter$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.sf.cglib.util.ParallelSorterEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Object[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 3
    ICount: 31
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorter$Generator:275"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:278"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:277"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.util.ParallelSorter$Generator:278"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:283"
        BranchSideFuncs:
        - "isArray()"
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:282"
        BranchSideFuncs:
        - "getClassName()"
        - "<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Object[])"
    - Branch String: "net.sf.cglib.util.ParallelSorter$Generator:279"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:278"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "getClass()"
      - BranchSide: "net.sf.cglib.util.ParallelSorter$Generator:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:276,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:279,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:279,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:280,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:283,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:283,1"
      Dst: "[net.sf.cglib.util.ParallelSorterEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.util.ParallelSorterEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorterEmitter"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.util.ParallelSorterEmitter].generateConstructor(java.lang.Object[])"
    - "[net.sf.cglib.util.ParallelSorterEmitter].generateSwap(java.lang.Object[])"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:35,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:36,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:37,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:38,1"
      Dst: "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:39,1"
      Dst: "[net.sf.cglib.util.ParallelSorterEmitter].generateConstructor(java.lang.Object[])"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:40,1"
      Dst: "[net.sf.cglib.util.ParallelSorterEmitter].generateSwap(java.lang.Object[])"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:41,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.TypeUtils].parseConstructor(org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 4
    ICount: 12
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:79,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.EmitUtils:80,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - Src: "net.sf.cglib.core.EmitUtils:81,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:82,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.core.EmitUtils:83,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.core.EmitUtils:83,1"
      Dst: "[net.sf.cglib.core.TypeUtils].parseConstructor(org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.EmitUtils:83,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:84,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.core.EmitUtils:85,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.TypeUtils].parseConstructor(org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:199"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:201"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:197,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.sf.cglib.core.TypeUtils:198,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:200,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.core.TypeUtils:204,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.sf.cglib.core.TypeUtils:204,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,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: "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 536
    functionLinenumberEnd: 539
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:537,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:537,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.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: "[net.sf.cglib.util.ParallelSorterEmitter].generateConstructor(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorterEmitter"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 68
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].super_putfield(java.lang.String,org.objectweb.asm.Type)"
    - "[java.lang.Object].getClass()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.util.ParallelSorterEmitter].getFieldName(int)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].aaload()"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 30
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorterEmitter:55"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorterEmitter:64"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:49,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:50,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:51,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:53,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:54,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_putfield(java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:56,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:56,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:57,1"
      Dst: "[net.sf.cglib.util.ParallelSorterEmitter].getFieldName(int)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:57,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:60,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:61,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:62,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:63,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:65,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:66,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.util.ParallelSorterEmitter].getFieldName(int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorterEmitter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:45,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: "[net.sf.cglib.core.CodeEmitter].aaload()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:567,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.util.ParallelSorterEmitter].generateSwap(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorterEmitter"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 100
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[java.lang.Object].getClass()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.util.ParallelSorterEmitter].getFieldName(int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].array_store(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 33
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorterEmitter:71"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorterEmitter:96"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:70,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:72,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:72,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:73,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:74,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:76,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:77,1"
      Dst: "[net.sf.cglib.util.ParallelSorterEmitter].getFieldName(int)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:77,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:78,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:80,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:81,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:85,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:94,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].array_store(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:97,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.util.ParallelSorterEmitter:98,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.CodeEmitter].array_store(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:246,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:246,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.util.ParallelSorter$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[net.sf.cglib.util.ParallelSorter].newInstance(java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:287,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:287,1"
      Dst: "[net.sf.cglib.util.ParallelSorter].newInstance(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: "[net.sf.cglib.util.ParallelSorter$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$Generator"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.util.ParallelSorter].newInstance(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$Generator:291,1"
      Dst: "[net.sf.cglib.util.ParallelSorter].newInstance(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: "[net.sf.cglib.core.ClassNameReader$1].<init>(int,org.objectweb.asm.ClassVisitor,java.util.List)"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.objectweb.asm.ClassVisitor"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassVisitor].<init>(int,org.objectweb.asm.ClassVisitor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassNameReader$1:40,1"
      Dst: "[org.objectweb.asm.ClassVisitor].<init>(int,org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassNameReader$1].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[java.lang.String].replace(char,char)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:sun.awt.util.IdentityArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 6
    ICount: 25
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassNameReader$1:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassNameReader$1:51"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ClassNameReader$1:50"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ClassNameReader$1:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassNameReader$1:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassNameReader$1:47,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.ClassNameReader$1:47,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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.internal.LoadingCache].<init>(net.sf.cglib.core.internal.Function,net.sf.cglib.core.internal.Function)"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache"
    linkageType: ""
    functionLinenumber: 15
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.internal.Function"
    - "net.sf.cglib.core.internal.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache:16,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.internal.LoadingCache:19,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<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: "[net.sf.cglib.core.internal.LoadingCache].identity()"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.core.internal.Function"
    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: "[net.sf.cglib.beans.BeanMapEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,int)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 78
    functionDepth: 11
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.beans.BeanMapEmitter].generateConstructor()"
    - "[net.sf.cglib.core.ReflectUtils].getBeanGetters(java.lang.Class)"
    - "[net.sf.cglib.beans.BeanMapEmitter].makePropertyMap(java.beans.PropertyDescriptor[])"
    - "[net.sf.cglib.core.ReflectUtils].getBeanSetters(java.lang.Class)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashMap].putAll(java.util.Map)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.beans.BeanMap].containsKey(java.lang.Object)"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[java.awt.RenderingHints:java.util.AbstractMap: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].containsKey(java.lang.Object)"
    - "[java.util.Iterator].remove()"
    - "[net.sf.cglib.beans.BeanMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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)"
    - "[net.sf.cglib.beans.BeanMapEmitter].generateGet(java.lang.Class,java.util.Map)"
    - "[net.sf.cglib.beans.BeanMapEmitter].generatePut(java.lang.Class,java.util.Map)"
    - "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - "[net.sf.cglib.beans.BeanMapEmitter].generateKeySet(java.lang.String[])"
    - "[net.sf.cglib.beans.BeanMapEmitter].generateGetPropertyType(java.util.Map,java.lang.String[])"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 46
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:59"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:70"
        BranchSideFuncs:
        - "hasNext()"
        - "keySet()"
        - "iterator()"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:69"
        BranchSideFuncs:
        - "end_class()"
        - "getNames(java.util.Map)"
        - "generatePut(java.lang.Class,java.util.Map)"
        - "generateGetPropertyType(java.util.Map,java.lang.String[])"
        - "generateKeySet(java.lang.String[])"
        - "generateGet(java.lang.Class,java.util.Map)"
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:60"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:70"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:69"
        BranchSideFuncs:
        - "end_class()"
        - "getNames(java.util.Map)"
        - "generatePut(java.lang.Class,java.util.Map)"
        - "generateGetPropertyType(java.util.Map,java.lang.String[])"
        - "generateKeySet(java.lang.String[])"
        - "generateGet(java.lang.Class,java.util.Map)"
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:61"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:60"
        BranchSideFuncs:
        - "next()"
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:64"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:63"
        BranchSideFuncs:
        - "remove()"
        - "remove(java.lang.Object)"
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:68"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:67"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:63"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:68"
        BranchSideFuncs:
        - "remove()"
        - "remove(java.lang.Object)"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:46,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:48,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:49,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:50,1"
      Dst: "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:51,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].generateConstructor()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:53,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanGetters(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:53,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].makePropertyMap(java.beans.PropertyDescriptor[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:54,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanSetters(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:55,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:56,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:60,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:60,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:60,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:62,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:64,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:65,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:70,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].generateGet(java.lang.Class,java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:71,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].generatePut(java.lang.Class,java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:73,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:74,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].generateKeySet(java.lang.String[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:75,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].generateGetPropertyType(java.util.Map,java.lang.String[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:76,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 10
    CyclomaticComplexity: 7
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter].makePropertyMap(java.beans.PropertyDescriptor[])"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.beans.PropertyDescriptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.beans.FeatureDescriptor].getName()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter:81"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:80,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:82,1"
      Dst: "[java.beans.FeatureDescriptor].getName()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:82,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].keySet()"
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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].size()"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.Map].keySet()"
    - "[java.util.Map].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:88,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:88,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:88,1"
      Dst: "[java.util.Set].toArray(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: "[net.sf.cglib.beans.BeanMapEmitter].generateConstructor()"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 99
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:92,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:93,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:94,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:95,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:96,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:97,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 540
    functionLinenumberEnd: 543
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:541,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:541,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.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: "[net.sf.cglib.beans.BeanMapEmitter].generateGet(java.lang.Class,java.util.Map)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 121
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:101,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:102,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:103,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:103,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:106,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:106,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter$1].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:106,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:119,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$1].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$1"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.beans.BeanMapEmitter"
    - "java.util.Map"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$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: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 188
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.lang.String[]"
    - "int"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].string_switch_trie(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.EmitUtils].string_switch_hash(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 10
    ICount: 25
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:169,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch_trie(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:172,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch_hash(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    - Src: "net.sf.cglib.core.EmitUtils:178,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.core.EmitUtils:178,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:185,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 10
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].string_switch_trie(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 215
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.lang.String[]"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.EmitUtils$1].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.EmitUtils$2].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processDefault()"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processDefault()"
    - "[net.sf.cglib.proxy.Enhancer$5].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$16].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$12].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processDefault()"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    functionUses: 1
    ICount: 22
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:192,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:194,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:194,1"
      Dst: "[net.sf.cglib.core.EmitUtils$1].<init>()"
    - Src: "net.sf.cglib.core.EmitUtils:194,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:199,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:200,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:201,1"
      Dst: "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - Src: "net.sf.cglib.core.EmitUtils:201,1"
      Dst: "[net.sf.cglib.core.EmitUtils$2].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:201,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:210,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:211,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils:212,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    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: "[net.sf.cglib.core.EmitUtils$1].<init>()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$1"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$1:194,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: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "net.sf.cglib.core.Transformer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.DelayQueue:java.util.concurrent.LinkedBlockingQueue].next()"
    - "[net.sf.cglib.core.MethodInfoTransformer].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$13].transform(java.lang.Object)"
    - "[net.sf.cglib.proxy.Enhancer$2].transform(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClassEmitter$1].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$5].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$15].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$11].transform(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClassEmitter$2].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$3].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$1].transform(java.lang.Object)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$1].transform(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.HashMap:java.util.LinkedHashMap].put(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:sun.awt.util.IdentityArrayList].add(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.Transformer].transform(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 7
    ICount: 20
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CollectionUtils:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:39"
        BranchSideFuncs:
        - "transform(java.lang.Object)"
        - "next()"
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:38"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CollectionUtils:34"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:null"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
    Callsites:
    - Src: "net.sf.cglib.core.CollectionUtils:29,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.core.CollectionUtils:30,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.sf.cglib.core.CollectionUtils:30,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.CollectionUtils:31,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.CollectionUtils:32,1"
      Dst: "[net.sf.cglib.core.Transformer].transform(java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:33,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:35,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "net.sf.cglib.core.CollectionUtils:35,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:37,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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].size()"
    - "[java.awt.RenderingHints].size()"
    - "[java.util.jar.Attributes].size()"
    - "[java.util.HashMap].size()"
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.util.Hashtable].size()"
    - "[java.util.TreeMap].size()"
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Properties].size()"
    - "[java.util.WeakHashMap].size()"
    - "[java.util.AbstractMap].size()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.awt.RenderingHints].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.lang.Integer].intValue()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.util.Arrays].sort(int[])"
    - "[java.util.Map].size()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 17
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:250"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:253"
        BranchSideFuncs:
        - "intValue()"
        - "next()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:252"
        BranchSideFuncs:
        - "sort(int[])"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:248,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.core.EmitUtils:250,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.core.EmitUtils:250,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.core.EmitUtils:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.EmitUtils:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.EmitUtils:251,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.sf.cglib.core.EmitUtils:253,1"
      Dst: "[java.util.Arrays].sort(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.EmitUtils$2].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$2"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.util.Map"
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$2:201,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: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 610
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "net.sf.cglib.core.ProcessSwitchCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback,boolean)"
    functionUses: 9
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:603"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:606"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:605"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:608"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:608"
        BranchSideFuncs:
        - "process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback,boolean)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:607"
        BranchSideFuncs:
        - "process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback,boolean)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:608,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback,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: 7
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback,boolean)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 663
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "net.sf.cglib.core.ProcessSwitchCallback"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].isSorted(int[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodVisitor].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodWriter].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$4].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$14].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$4].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.Enhancer$4].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$2].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.Enhancer$3].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$6].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodVisitor].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodWriter].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$4].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$6].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$4].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$2].processDefault()"
    - "[net.sf.cglib.proxy.Enhancer$3].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$14].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].processDefault()"
    - "[net.sf.cglib.proxy.Enhancer$4].processDefault()"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[net.sf.cglib.core.ProcessSwitchCallback].processCase(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.ProcessSwitchCallback].processDefault()"
    functionUses: 1
    ICount: 72
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:612"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:614"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:613"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:618"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:651"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:650"
        BranchSideFuncs:
        - "processDefault()"
        - "mark(org.objectweb.asm.Label)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:624"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:639"
        BranchSideFuncs:
        - "fill(java.lang.Object[],java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:638"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:627"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:630"
        BranchSideFuncs:
        - "processCase(int,org.objectweb.asm.Label)"
        - "fill(java.lang.Object[],java.lang.Object)"
        - "processDefault()"
        - "mark(org.objectweb.asm.Label)"
        - "<init>(java.lang.String)"
        - "visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
        - "visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
        - "make_label()"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:629"
        BranchSideFuncs:
        - "visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - Branch String: "net.sf.cglib.core.CodeEmitter:631"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:638"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:637"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:633"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:630"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:629"
        BranchSideFuncs:
        - "visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - Branch String: "net.sf.cglib.core.CodeEmitter:640"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:643"
        BranchSideFuncs:
        - "processCase(int,org.objectweb.asm.Label)"
        - "fill(java.lang.Object[],java.lang.Object)"
        - "processDefault()"
        - "mark(org.objectweb.asm.Label)"
        - "<init>(java.lang.String)"
        - "visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
        - "visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
        - "make_label()"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:642"
        BranchSideFuncs:
        - "visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - Branch String: "net.sf.cglib.core.CodeEmitter:644"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:651"
        BranchSideFuncs:
        - "processCase(int,org.objectweb.asm.Label)"
        - "fill(java.lang.Object[],java.lang.Object)"
        - "processDefault()"
        - "mark(org.objectweb.asm.Label)"
        - "<init>(java.lang.String)"
        - "visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
        - "visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
        - "make_label()"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:650"
        BranchSideFuncs:
        - "processDefault()"
        - "mark(org.objectweb.asm.Label)"
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:612,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].isSorted(int[])"
    - Src: "net.sf.cglib.core.CodeEmitter:613,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:614,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.CodeEmitter:626,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    - Src: "net.sf.cglib.core.CodeEmitter:630,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - Src: "net.sf.cglib.core.CodeEmitter:634,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:635,1"
      Dst: "[net.sf.cglib.core.ProcessSwitchCallback].processCase(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.CodeEmitter:643,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - Src: "net.sf.cglib.core.CodeEmitter:652,1"
      Dst: "[net.sf.cglib.core.ProcessSwitchCallback].processDefault()"
    - Src: "net.sf.cglib.core.CodeEmitter:660,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<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: 24
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.CodeEmitter].isSorted(int[])"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 664
    functionLinenumberEnd: 670
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:665"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:669"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:668"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:666"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:665"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:664"
        BranchSideFuncs: []
    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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.EmitUtils].string_switch_hash(net.sf.cglib.core.CodeEmitter,java.lang.String[],net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 307
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.lang.String[]"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils$5].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.EmitUtils$6].<init>(java.util.Map,boolean,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processDefault()"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processDefault()"
    - "[net.sf.cglib.proxy.Enhancer$5].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$16].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$12].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processDefault()"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    functionUses: 2
    ICount: 22
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:261,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:261,1"
      Dst: "[net.sf.cglib.core.EmitUtils$5].<init>()"
    - Src: "net.sf.cglib.core.EmitUtils:261,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:266,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:268,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:269,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:270,1"
      Dst: "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - Src: "net.sf.cglib.core.EmitUtils:270,1"
      Dst: "[net.sf.cglib.core.EmitUtils$6].<init>(java.util.Map,boolean,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:270,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:303,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:304,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    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: "[net.sf.cglib.core.EmitUtils$6].<init>(java.util.Map,boolean,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$6"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.util.Map"
    - "boolean"
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$6:270,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: "[net.sf.cglib.beans.BeanMapEmitter].generatePut(java.lang.Class,java.util.Map)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 19
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:123,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:124,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:125,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:125,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:128,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].getNames(java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:128,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter$2].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:128,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:150,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:151,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:152,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$2].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$2"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.beans.BeanMapEmitter"
    - "java.util.Map"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:128,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: "[net.sf.cglib.beans.BeanMapEmitter].generateKeySet(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 175
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.EmitUtils].push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    functionUses: 1
    ICount: 22
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:157,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:159,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_static()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:160,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:161,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:162,1"
      Dst: "[net.sf.cglib.core.EmitUtils].push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:163,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:164,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:165,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:166,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:169,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:170,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:171,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(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: "[net.sf.cglib.core.EmitUtils].push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 355
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].remapComponentType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    functionUses: 2
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:348"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:353"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:346,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:347,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.core.EmitUtils:347,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.sf.cglib.core.EmitUtils:347,1"
      Dst: "[net.sf.cglib.core.EmitUtils].remapComponentType(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:347,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:347,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:349,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:351,1"
      Dst: "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:352,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    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: "[net.sf.cglib.core.EmitUtils].remapComponentType(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 360
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:357"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:359"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:357,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 350
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].NEWARRAY(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.MethodWriter].visitIntInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIntInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.Type)"
    functionUses: 6
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:344"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:347"
        BranchSideFuncs:
        - "NEWARRAY(org.objectweb.asm.Type)"
        - "visitIntInsn(int,int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:346"
        BranchSideFuncs:
        - "emit_type(int,org.objectweb.asm.Type)"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:344,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:345,1"
      Dst: "[net.sf.cglib.core.TypeUtils].NEWARRAY(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:345,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    - Src: "net.sf.cglib.core.CodeEmitter:347,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].NEWARRAY(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:381,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    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: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 390
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.sf.cglib.core.EmitUtils].push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[javax.accessibility.AccessibleBundle].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.font.AttributeValues].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[java.lang.invoke.LambdaFormEditor$TransformKey].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[sun.java2d.loops.GraphicsPrimitive].toString()"
    - "[jaz.Zer].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[java.awt.font.TextHitInfo].toString()"
    - "[java.awt.geom.Rectangle2D$Double].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.beans.FeatureDescriptor].toString()"
    - "[java.awt.ScrollPaneAdjustable].toString()"
    - "[java.net.URI].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[java.net.Proxy].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.awt.PageAttributes$OriginType].toString()"
    - "[java.lang.Enum$EnumDesc].toString()"
    - "[java.awt.image.ColorModel].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[java.text.Annotation].toString()"
    - "[java.time.Duration].toString()"
    - "[java.util.concurrent.Semaphore].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.awt.PageAttributes].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[java.awt.Color].toString()"
    - "[java.awt.JobAttributes$SidesType].toString()"
    - "[java.awt.DisplayMode].toString()"
    - "[java.util.Hashtable].toString()"
    - "[java.awt.geom.Rectangle2D$Float].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[sun.java2d.loops.FontInfo].toString()"
    - "[java.awt.Point].toString()"
    - "[java.awt.Font].toString()"
    - "[java.lang.Module].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[java.util.Optional].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.reflect.RecordComponent].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[java.util.Properties].toString()"
    - "[java.awt.AttributeValue].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.awt.AWTEvent].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[java.awt.datatransfer.DataFlavor].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[java.lang.Class].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[java.awt.Graphics].toString()"
    - "[net.sf.cglib.core.ClassInfo].toString()"
    - "[java.lang.Object].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[java.io.StringWriter].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[java.awt.RenderingHints].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.lang.Package].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[java.util.Calendar].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[java.awt.datatransfer.MimeType].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[sun.font.EAttribute].toString()"
    - "[java.lang.invoke.VarHandle].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[java.awt.PageAttributes$MediaType].toString()"
    - "[java.util.Date].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[sun.font.StrikeMetrics].toString()"
    - "[java.util.Currency].toString()"
    - "[java.security.Timestamp].toString()"
    - "[java.awt.datatransfer.MimeTypeParameterList].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.accessibility.AccessibleStateSet].toString()"
    - "[java.lang.Byte].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[java.awt.MenuShortcut].toString()"
    - "[sun.awt.AppContext].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.java2d.loops.CompositeType].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[net.sf.cglib.core.MethodInfo].toString()"
    - "[java.security.Provider].toString()"
    - "[java.security.Signature].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[java.util.Vector].toString()"
    - "[java.awt.Rectangle].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[javax.accessibility.AccessibleRelationSet].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[java.awt.CheckboxGroup].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.awt.Event].toString()"
    - "[javax.swing.TransferHandler$DropLocation].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.awt.geom.AffineTransform].toString()"
    - "[java.awt.geom.Point2D$Float].toString()"
    - "[java.math.MathContext].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[javax.swing.event.EventListenerList].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[java.security.Permission].toString()"
    - "[sun.java2d.pipe.Region].toString()"
    - "[java.awt.BufferCapabilities$FlipContents].toString()"
    - "[java.awt.PageAttributes$ColorType].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[java.awt.PageAttributes$OrientationRequestedType].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[java.util.EventObject].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[sun.java2d.loops.SurfaceType].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[java.net.InetAddress].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[java.time.ZoneId].toString()"
    - "[java.awt.MenuComponent].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[java.math.BigInteger].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.time.Instant].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[java.lang.Thread].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.awt.image.BufferedImage].toString()"
    - "[java.lang.Short].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[net.sf.cglib.reflect.FastClass].toString()"
    - "[java.awt.JobAttributes].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[sun.font.FontStrikeDesc].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[java.lang.Long].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[java.time.Period].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.awt.Dimension].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.lang.Enum].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.constant.DynamicConstantDesc].toString()"
    - "[java.awt.FontMetrics].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.Insets].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.awt.Cursor].toString()"
    - "[java.awt.font.NumericShaper].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.awt.image.IndexColorModel].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[java.awt.Component].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.io.File].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[java.awt.JobAttributes$DefaultSelectionType].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[net.sf.cglib.reflect.FastMember].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[net.sf.cglib.core.Signature].toString()"
    - "[net.sf.cglib.transform.ClassTransformerChain].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.awt.JobAttributes$MultipleDocumentHandlingType].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[javax.crypto.Cipher].toString()"
    - "[java.awt.JobAttributes$DialogType].toString()"
    - "[java.beans.PropertyChangeEvent].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.util.concurrent.FutureTask].toString()"
    - "[net.sf.cglib.beans.BeanMap].toString()"
    - "[java.awt.JobAttributes$DestinationType].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[net.sf.cglib.core.WeakCacheKey].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[javax.swing.TimerQueue].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[java.lang.Float].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[java.awt.geom.Point2D$Double].toString()"
    - "[java.lang.Character].toString()"
    - "[java.awt.PageAttributes$PrintQualityType].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[java.lang.Throwable].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.lang.Boolean].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[java.net.URL].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.awt.AWTKeyStroke].toString()"
    - "[sun.font.FontFamily].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.String].toString()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 3
    ICount: 53
    EdgeCount: 618
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:363"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:366"
        BranchSideFuncs:
        - "aconst_null()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:365"
        BranchSideFuncs:
        - "isArray()"
    - Branch String: "net.sf.cglib.core.EmitUtils:367"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:369"
        BranchSideFuncs:
        - "push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
      - BranchSide: "net.sf.cglib.core.EmitUtils:368"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:369"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:371"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:370"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:371"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:373"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:372"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:373"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:375"
        BranchSideFuncs:
        - "load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "getType(java.lang.Class)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:374"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:380"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:379"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:380"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:386"
        BranchSideFuncs:
        - "toString()"
        - "dup()"
        - "invoke_constructor(org.objectweb.asm.Type)"
        - "push(java.lang.String)"
        - "new_instance(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:385"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "getClass()"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:364,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.core.EmitUtils:366,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.core.EmitUtils:367,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.sf.cglib.core.EmitUtils:368,1"
      Dst: "[net.sf.cglib.core.EmitUtils].push_array(net.sf.cglib.core.CodeEmitter,java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:370,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:372,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:374,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:376,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:377,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:378,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.sf.cglib.core.EmitUtils:379,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:386,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:386,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: 16
    CyclomaticComplexity: 7
  - functionName: "[net.sf.cglib.core.CodeEmitter].aastore()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 569
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 8
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:568,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.beans.BeanMapEmitter].generateGetPropertyType(java.util.Map,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 192
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter:177,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:178,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:179,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter$3].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:179,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter:190,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$3].<init>(net.sf.cglib.beans.BeanMapEmitter,java.util.Map,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$3"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.beans.BeanMapEmitter"
    - "java.util.Map"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:179,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: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].determineTypes(java.lang.Class[],boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:23,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(java.lang.Class[],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: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(java.lang.Class[],boolean)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "org.objectweb.asm.Type[]"
    argCount: 2
    argTypes:
    - "java.lang.Class[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].determineType(java.lang.Class,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:28"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:29,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineType(java.lang.Class,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.CallbackInfo].determineType(java.lang.Class,boolean)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 31
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:86"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:99"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:98"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:88"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:84"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:83"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:92"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:91"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:94"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:84"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:83"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:99"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:102"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:88,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:90,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:90,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:100,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: 11
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[],boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:35,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[],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: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[],boolean)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionDepth: 2
    returnType: "org.objectweb.asm.Type[]"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.Callback[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].determineType(net.sf.cglib.proxy.Callback,boolean)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:40"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:41,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineType(net.sf.cglib.proxy.Callback,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.CallbackInfo].determineType(net.sf.cglib.proxy.Callback,boolean)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "org.objectweb.asm.Type"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.Callback"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.proxy.CallbackInfo].determineType(java.lang.Class,boolean)"
    - "[java.lang.Object].getClass()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:77"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:80"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:79"
        BranchSideFuncs:
        - "getClass()"
        - "determineType(java.lang.Class,boolean)"
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:78,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:80,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.proxy.CallbackInfo:80,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineType(java.lang.Class,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.CallbackInfo].getGenerators(org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "net.sf.cglib.proxy.CallbackGenerator[]"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].getGenerator(org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:49,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].getGenerator(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.CallbackInfo].getGenerator(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "net.sf.cglib.proxy.CallbackGenerator"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:106"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:112"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:111"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "net.sf.cglib.proxy.CallbackInfo:108"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:106"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.CallbackInfo:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:108,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:112,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.CallbackInfo:112,1"
      Dst: "[java.lang.IllegalStateException].<init>(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: "[net.sf.cglib.proxy.CallbackInfo].<init>(java.lang.Class,net.sf.cglib.proxy.CallbackGenerator)"
    functionSourceFile: "net.sf.cglib.proxy.CallbackInfo"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.CallbackGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 7
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.CallbackInfo:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.proxy.CallbackInfo:73,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[org.objectweb.asm.Constants].<init>()"
    functionSourceFile: "org.objectweb.asm.Constants"
    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: "org.objectweb.asm.Constants:176,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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$1"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.transform.impl.FieldProviderTransformer"
    - "java.lang.String[]"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:138,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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$1"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:140,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:141,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:142,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:143,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].processDefault()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$1"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$1:146,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    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: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 694
    functionLinenumberEnd: 701
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].athrow()"
    functionUses: 9
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:695,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:696,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.CodeEmitter:697,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:698,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.CodeEmitter:699,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].athrow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].athrow()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:569,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].<init>(net.sf.cglib.transform.impl.InterceptFieldFilter)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.transform.impl.InterceptFieldFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:39,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 69
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    functionUses: 12
    ICount: 30
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:44"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:66"
        BranchSideFuncs:
        - "return_value()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "getfield(java.lang.String)"
        - "end_method()"
        - "add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
        - "load_this()"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "putfield(java.lang.String)"
        - "load_arg(int)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:65"
        BranchSideFuncs:
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:44,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:45,1"
      Dst: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:45,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:47,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:53,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:54,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:55,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:56,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:57,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:61,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:62,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type[]"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[jaz.Zer].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 3
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:110"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:113"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:112"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
        - "asList(java.lang.Object[])"
    - Branch String: "net.sf.cglib.core.TypeUtils:114"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:117"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:116"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:113,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.TypeUtils:114,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.sf.cglib.core.TypeUtils:118,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 81
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addReadMethod(java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addWriteMethod(java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptRead(org.objectweb.asm.Type,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptWrite(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 19
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:72"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:80"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:79"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:76"
        BranchSideFuncs:
        - "addReadMethod(java.lang.String,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:75"
        BranchSideFuncs:
        - "getClassType()"
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:76"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:80"
        BranchSideFuncs:
        - "addWriteMethod(java.lang.String,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:71,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:72,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:73,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:73,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptRead(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:74,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addReadMethod(java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:76,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptWrite(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:77,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addWriteMethod(java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addReadMethod(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 109
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readMethodSig(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readCallbackSig(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 34
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:106"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:105"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:84,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:84,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readMethodSig(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:83,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:86,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:87,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:89,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:90,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:91,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:92,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:94,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:95,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:96,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:100,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:101,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:102,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readCallbackSig(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:103,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:107,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readMethodSig(java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "net.sf.cglib.core.Signature"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:169,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:169,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readCallbackSig(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionDepth: 4
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].remap(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].callbackName(org.objectweb.asm.Type)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:177,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].remap(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:178,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].callbackName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:178,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:178,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].remap(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:196,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].callbackName(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:206"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:208"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:207"
        BranchSideFuncs:
        - "getClassName(org.objectweb.asm.Type)"
        - "upperFirst(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:208,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:208,1"
      Dst: "[net.sf.cglib.core.TypeUtils].upperFirst(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].addWriteMethod(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 140
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[org.objectweb.asm.Type].getDescriptor()"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeMethodSig(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeCallbackSig(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 37
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer:128"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:131"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer:130"
        BranchSideFuncs:
        - "end_method()"
        - "make_label()"
        - "load_arg(int)"
        - "return_value()"
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
        - "putfield(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:112,1"
      Dst: "[org.objectweb.asm.Type].getDescriptor()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:112,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeMethodSig(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:111,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:115,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:116,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:117,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:118,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:123,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:125,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:126,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:127,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeCallbackSig(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:128,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:129,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:132,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:133,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:136,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:138,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeMethodSig(java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "net.sf.cglib.core.Signature"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:173,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:173,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeCallbackSig(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 4
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].remap(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].callbackName(org.objectweb.asm.Type)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:186,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].remap(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:187,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].callbackName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:187,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:187,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].<init>(net.sf.cglib.transform.impl.InterceptFieldTransformer,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionUses: 33
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:142,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer:142,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].<init>(net.sf.cglib.transform.impl.InterceptFieldTransformer,net.sf.cglib.core.CodeEmitter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].<init>(net.sf.cglib.transform.impl.InterceptFieldTransformer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.impl.InterceptFieldTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:142,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils$3].<init>()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$3"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$3:88,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: "[net.sf.cglib.core.ReflectUtils$3].run()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$3"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:sun.awt.util.IdentityArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils$3:91"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:98"
        BranchSideFuncs:
        - "getName()"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:97"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils$3:92"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:90"
        BranchSideFuncs:
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:89"
        BranchSideFuncs:
        - "getDeclaredMethods()"
    - Branch String: "net.sf.cglib.core.ReflectUtils$3:93"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:96"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils$3:95"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$3:90,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "net.sf.cglib.core.ReflectUtils$3:92,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.core.ReflectUtils$3:92,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils$3:93,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "net.sf.cglib.core.ReflectUtils$3:96,1"
      Dst: "[java.util.List].add(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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.transform.TransformingClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.TransformingClassGenerator"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassTransformerTee].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformerChain].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.MethodFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.proxy.Enhancer].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.util.StringSwitcher$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanCopier$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanMap$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.ConstructorDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.KeyFactory$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.proxy.Mixin$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.util.ParallelSorter$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.TransformingClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassReaderGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.proxy.InterfaceMaker].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.FastClass$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.ImmutableBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.MethodDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BulkBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionUses: 3
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.TransformingClassGenerator:32,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.transform.TransformingClassGenerator:33,1"
      Dst: "[net.sf.cglib.core.ClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Proxy$1].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.Proxy$1"
    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: "net.sf.cglib.proxy.Proxy$1: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: "[net.sf.cglib.proxy.Proxy$1].accept(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy$1"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Method].getName()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Proxy$1:43"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:51"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:50"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Proxy$1:45"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:51"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:50"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Proxy$1:46"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:51"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:50"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Proxy$1:47"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:51"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Proxy$1:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy$1:43,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "net.sf.cglib.proxy.Proxy$1:43,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.Proxy$1:43,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Proxy$1:44,1"
      Dst: "[java.lang.reflect.Method].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: 6
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    functionSourceFile: "net.sf.cglib.core.VisibilityPredicate"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 33
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Class].getClassLoader()"
    - "[net.sf.cglib.core.TypeUtils].getPackageName(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 3
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:26"
        BranchSideFuncs:
        - "getClassLoader()"
        - "getPackageName(org.objectweb.asm.Type)"
        - "getType(java.lang.Class)"
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:25"
        BranchSideFuncs:
        - "getClassLoader()"
        - "<init>()"
    Callsites:
    - Src: "net.sf.cglib.core.VisibilityPredicate:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.VisibilityPredicate:30,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.sf.cglib.core.VisibilityPredicate:31,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:31,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getPackageName(org.objectweb.asm.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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.VisibilityPredicate].evaluate(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.VisibilityPredicate"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 49
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Modifier].isProtected(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method].getDeclaringClass()"
    - "[net.sf.cglib.core.TypeUtils].getPackageName(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[java.lang.reflect.Member].getModifiers()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    functionUses: 2
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:37"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:39"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:38"
        BranchSideFuncs:
        - "isPublic(int)"
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:39"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:41"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:40"
        BranchSideFuncs:
        - "isProtected(int)"
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:46"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:46"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:47"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:47"
        BranchSideFuncs:
        - "getPackageName(org.objectweb.asm.Type)"
        - "getDeclaringClass()"
        - "getType(java.lang.Class)"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:46"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.VisibilityPredicate:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.VisibilityPredicate:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.VisibilityPredicate:36,1"
      Dst: "[java.lang.reflect.Member].getModifiers()"
    - Src: "net.sf.cglib.core.VisibilityPredicate:37,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:39,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:41,1"
      Dst: "[java.lang.reflect.Modifier].isProtected(int)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:48,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "net.sf.cglib.core.VisibilityPredicate:48,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:48,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getPackageName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.VisibilityPredicate:48,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: 12
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.TypeUtils].getPackageName(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].getPackageName(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:84,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getClassName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.TypeUtils:84,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getPackageName(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: "[net.sf.cglib.core.TypeUtils].getPackageName(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    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: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:87"
        BranchSideFuncs:
        - "lastIndexOf(int)"
        - "substring(int,int)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:88,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "net.sf.cglib.core.TypeUtils:89,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ClassEmitter$3].isStaticHook()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$3"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    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: "[net.sf.cglib.proxy.Proxy$ProxyImpl].<init>(net.sf.cglib.proxy.InvocationHandler)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy$ProxyImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.InvocationHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Proxy].<init>(net.sf.cglib.proxy.InvocationHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy$ProxyImpl:63,1"
      Dst: "[net.sf.cglib.proxy.Proxy].<init>(net.sf.cglib.proxy.InvocationHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.ImmutableBean].<init>()"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean"
    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: "net.sf.cglib.beans.ImmutableBean: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: "[net.sf.cglib.beans.ImmutableBean].create(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.ImmutableBean$Generator].<init>()"
    - "[net.sf.cglib.beans.ImmutableBean$Generator].setBean(java.lang.Object)"
    - "[net.sf.cglib.beans.ImmutableBean$Generator].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean:40,1"
      Dst: "[net.sf.cglib.beans.ImmutableBean$Generator].<init>()"
    - Src: "net.sf.cglib.beans.ImmutableBean:41,1"
      Dst: "[net.sf.cglib.beans.ImmutableBean$Generator].setBean(java.lang.Object)"
    - Src: "net.sf.cglib.beans.ImmutableBean:42,1"
      Dst: "[net.sf.cglib.beans.ImmutableBean$Generator].create()"
    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: "[net.sf.cglib.beans.ImmutableBean$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:51,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.ImmutableBean$Generator].setBean(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:56,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.ImmutableBean$Generator].create()"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:68,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:69,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:70,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.core.EmitUtils$10].<init>(java.util.Map)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$10"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 734
    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: "net.sf.cglib.core.EmitUtils$10:733,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: "[net.sf.cglib.core.EmitUtils$10].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$10"
    linkageType: ""
    functionLinenumber: 734
    functionLinenumberEnd: 740
    functionDepth: 1
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[java.awt.RenderingHints].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils$10:736"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$10:739"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "getSignature()"
        - "getArgumentTypes()"
      - BranchSide: "net.sf.cglib.core.EmitUtils$10:738"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$10:735,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$10:737,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.EmitUtils$10:737,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.core.EmitUtils$10:737,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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.EmitUtils$12].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$12"
    linkageType: ""
    functionLinenumber: 751
    functionLinenumberEnd: 753
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.Map"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$12:752,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: "[net.sf.cglib.core.EmitUtils$12].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$12"
    linkageType: ""
    functionLinenumber: 753
    functionLinenumberEnd: 756
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$12:754,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$12:754,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    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: "[net.sf.cglib.core.EmitUtils].member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 781
    functionLinenumberEnd: 799
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils$13].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper)"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - "[net.sf.cglib.core.EmitUtils$14].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    functionUses: 2
    ICount: 16
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:782,1"
      Dst: "[net.sf.cglib.core.EmitUtils$13].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper)"
    - Src: "net.sf.cglib.core.EmitUtils:782,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:787,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:788,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - Src: "net.sf.cglib.core.EmitUtils:789,1"
      Dst: "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - Src: "net.sf.cglib.core.EmitUtils:789,1"
      Dst: "[net.sf.cglib.core.EmitUtils$14].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:789,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    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: "[net.sf.cglib.core.EmitUtils$13].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$13"
    linkageType: ""
    functionLinenumber: 781
    functionLinenumberEnd: 783
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$13:782,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: "[net.sf.cglib.core.EmitUtils$14].<init>(java.util.Map,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$14"
    linkageType: ""
    functionLinenumber: 788
    functionLinenumberEnd: 790
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.util.Map"
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$14:789,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: "[net.sf.cglib.core.EmitUtils$12].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$12"
    linkageType: ""
    functionLinenumber: 756
    functionLinenumberEnd: 759
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$12:757,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.transform.ClassTransformerTee].<init>(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerTee"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassTransformer].<init>(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerTee:25,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].<init>(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: "[net.sf.cglib.transform.ClassTransformerTee].setTarget(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerTee"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassVisitorTee].<init>(org.objectweb.asm.ClassVisitor,org.objectweb.asm.ClassVisitor)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerTee:30,1"
      Dst: "[net.sf.cglib.transform.ClassVisitorTee].<init>(org.objectweb.asm.ClassVisitor,org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].<init>(org.objectweb.asm.ClassVisitor,org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassVisitor].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:25,1"
      Dst: "[org.objectweb.asm.ClassVisitor].<init>(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: "[net.sf.cglib.beans.BeanMapEmitter$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$1"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[java.beans.PropertyDescriptor].getReadMethod()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter$State:net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 4
    ICount: 17
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:108,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:109,1"
      Dst: "[java.beans.PropertyDescriptor].getReadMethod()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:109,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:110,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:111,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:111,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:111,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$1].processDefault()"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$1"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:115,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$1:116,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].getSignature()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.core.Signature"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].getReturnType()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "org.objectweb.asm.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getReturnType()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:126,1"
      Dst: "[net.sf.cglib.core.Signature].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: "[net.sf.cglib.core.CodeEmitter].getMethodInfo()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.core.MethodInfo"
    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: "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 154
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.Block"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Block].getEnd()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.Block].getStart()"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].mark()"
    - "[org.objectweb.asm.Type].getInternalName()"
    functionUses: 6
    ICount: 15
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:146"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:149"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:148"
        BranchSideFuncs:
        - "visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
        - "mark()"
        - "getStart()"
        - "getEnd()"
        - "getInternalName()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:146,1"
      Dst: "[net.sf.cglib.core.Block].getEnd()"
    - Src: "net.sf.cglib.core.CodeEmitter:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.CodeEmitter:149,1"
      Dst: "[net.sf.cglib.core.Block].getStart()"
    - Src: "net.sf.cglib.core.CodeEmitter:151,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark()"
    - Src: "net.sf.cglib.core.CodeEmitter:152,1"
      Dst: "[org.objectweb.asm.Type].getInternalName()"
    - Src: "net.sf.cglib.core.CodeEmitter:149,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.Block].getEnd()"
    functionSourceFile: "net.sf.cglib.core.Block"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "org.objectweb.asm.Label"
    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: "[net.sf.cglib.core.Block].getStart()"
    functionSourceFile: "net.sf.cglib.core.Block"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "org.objectweb.asm.Label"
    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: "[net.sf.cglib.core.CodeEmitter].dup2_x1()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:216,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].dup2_x2()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:217,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].swap(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 239
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSize()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].dup_x2()"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].dup2_x1()"
    - "[net.sf.cglib.core.CodeEmitter].pop2()"
    - "[net.sf.cglib.core.CodeEmitter].dup2_x2()"
    functionUses: 2
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:222"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:230"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:229"
        BranchSideFuncs:
        - "getSize()"
    - Branch String: "net.sf.cglib.core.CodeEmitter:223"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:226"
        BranchSideFuncs:
        - "swap()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:225"
        BranchSideFuncs:
        - "dup_x2()"
        - "pop()"
    - Branch String: "net.sf.cglib.core.CodeEmitter:230"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:234"
        BranchSideFuncs:
        - "dup2_x1()"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:233"
        BranchSideFuncs:
        - "dup2_x2()"
        - "pop2()"
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:222,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    - Src: "net.sf.cglib.core.CodeEmitter:224,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.CodeEmitter:226,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x2()"
    - Src: "net.sf.cglib.core.CodeEmitter:227,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.CodeEmitter:231,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2_x1()"
    - Src: "net.sf.cglib.core.CodeEmitter:232,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop2()"
    - Src: "net.sf.cglib.core.CodeEmitter:234,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2_x2()"
    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: "[net.sf.cglib.core.CodeEmitter].monitorenter()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:240,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].monitorexit()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:241,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getOpcode(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:243,1"
      Dst: "[org.objectweb.asm.Type].getOpcode(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:243,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.core.CodeEmitter].cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[net.sf.cglib.core.CodeEmitter].cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    functionUses: 4
    ICount: 85
    EdgeCount: 78
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:252"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:296"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:295"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:253"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:262"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:261"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:254"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:256"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:255"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:256"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:259"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:258"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:262"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:271"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:270"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:263"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:265"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:264"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:265"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:268"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:267"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:271"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:281"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:280"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:272"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:274"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:273"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:274"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:277"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:276"
        BranchSideFuncs:
        - "cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.CodeEmitter:281"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:283"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:282"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:283"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:285"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:284"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:285"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:287"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:286"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:287"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:289"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:288"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:289"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:291"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:290"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CodeEmitter:291"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:296"
        BranchSideFuncs:
        - "visitInsn(int)"
      - BranchSide: "net.sf.cglib.core.CodeEmitter:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:255,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:260,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.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: 32
    CyclomaticComplexity: 17
  - functionName: "[net.sf.cglib.core.CodeEmitter].'newarray'()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:340,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].super_getstatic(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:443,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:443,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].super_putstatic(java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:447,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:447,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].getfield(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:451,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].putfield(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:455,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_field(int,org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].super_invoke()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 477
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].super_invoke(net.sf.cglib.core.Signature)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:475,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke(net.sf.cglib.core.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: "[net.sf.cglib.core.CodeEmitter].super_invoke(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 478
    functionLinenumberEnd: 481
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,boolean)"
    - "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:479,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getSuperType()"
    - Src: "net.sf.cglib.core.CodeEmitter:479,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_invoke(int,org.objectweb.asm.Type,net.sf.cglib.core.Signature,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: "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 527
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:525,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:525,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.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: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 562
    functionLinenumberEnd: 566
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].aaload()"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:563,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:564,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter].checkcast_this()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:584,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:584,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].instance_of(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 596
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:594,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].emit_type(int,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].instance_of_this()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].instance_of(org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:598,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.CodeEmitter:598,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].instance_of(org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].push(boolean)"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:683"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:683"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.CodeEmitter:682"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:683,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.CodeEmitter].not()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:690,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:691,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.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: "[net.sf.cglib.core.CodeEmitter].create_arg_array()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter"
    linkageType: ""
    functionLinenumber: 784
    functionLinenumberEnd: 795
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    functionUses: 2
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CodeEmitter:787"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CodeEmitter:793"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CodeEmitter:785,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:786,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'()"
    - Src: "net.sf.cglib.core.CodeEmitter:788,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.CodeEmitter:790,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.core.CodeEmitter:791,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.CodeEmitter:792,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    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: "[net.sf.cglib.util.ParallelSorter$ComparatorComparer].<init>(java.lang.Object[],java.util.Comparator)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ComparatorComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ComparatorComparer:187,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: "[net.sf.cglib.util.ParallelSorter$ComparatorComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ComparatorComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ComparatorComparer:193,1"
      Dst: "[java.util.Comparator].compare(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: "[net.sf.cglib.core.KeyFactory$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].<init>(java.lang.Class[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:188,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:183,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].<init>(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: "[net.sf.cglib.core.KeyFactory$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:192,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.core.KeyFactory$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:196,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.core.KeyFactory$Generator].setCustomizer(net.sf.cglib.core.Customizer)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Customizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:204,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    functionSourceFile: "net.sf.cglib.core.internal.CustomizerRegistry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.core.internal.CustomizerRegistry"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Customizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].<init>(java.lang.Class[])"
    - "[net.sf.cglib.core.internal.CustomizerRegistry].add(net.sf.cglib.core.KeyFactoryCustomizer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:44,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].<init>(java.lang.Class[])"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:45,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].add(net.sf.cglib.core.KeyFactoryCustomizer)"
    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: "[net.sf.cglib.core.internal.CustomizerRegistry].<init>(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.internal.CustomizerRegistry"
    linkageType: ""
    functionLinenumber: 12
    functionLinenumberEnd: 16
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:13,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:11,1"
      Dst: "[java.util.HashMap].<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: "[net.sf.cglib.core.internal.CustomizerRegistry].add(net.sf.cglib.core.KeyFactoryCustomizer)"
    functionSourceFile: "net.sf.cglib.core.internal.CustomizerRegistry"
    linkageType: ""
    functionLinenumber: 17
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.KeyFactoryCustomizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:sun.awt.util.IdentityArrayList].add(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.internal.CustomizerRegistry:19"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:28"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:27"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.internal.CustomizerRegistry:20"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:18"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:17"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "net.sf.cglib.core.internal.CustomizerRegistry:22"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:null"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
    Callsites:
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:18,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:20,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:21,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:23,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:23,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:25,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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].addCustomizer(net.sf.cglib.core.KeyFactoryCustomizer)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.KeyFactoryCustomizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].add(net.sf.cglib.core.KeyFactoryCustomizer)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:208,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].add(net.sf.cglib.core.KeyFactoryCustomizer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].getCustomizers(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:212,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].get(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: "[net.sf.cglib.core.KeyFactory$Generator].setInterface(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].create()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "net.sf.cglib.core.KeyFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:220,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:220,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:221,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.core.KeyFactory$Generator].setHashConstant(int)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].setHashMultiplier(int)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:233,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: "[net.sf.cglib.core.KeyFactory$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 341
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ReflectUtils].findNewInstance(java.lang.Class)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.TypeUtils].parseConstructor(org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - "[net.sf.cglib.core.KeyFactory$Generator].getCustomizers(java.lang.Class)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.core.KeyFactory$2].getOutType(int,org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.KeyFactory$Generator].getFieldName(int)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.KeyFactory$2].customize(net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.lang.Math].abs(int)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].instance_of_this()"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast_this()"
    - "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.FieldTypeCustomizer].getOutType(int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.FieldTypeCustomizer].customize(net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 159
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:244"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:248"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:247"
        BranchSideFuncs:
        - "parseConstructor(org.objectweb.asm.Type[])"
        - "getClassName()"
        - "getParameterTypes()"
        - "getCustomizers(java.lang.Class)"
        - "null_constructor(net.sf.cglib.core.ClassEmitter)"
        - "getTypes(java.lang.Class[])"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "getType(java.lang.Class)"
        - "super_invoke_constructor()"
        - "factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
        - "getSignature(java.lang.reflect.Member)"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:266"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:284"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:283"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:269"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:272"
        BranchSideFuncs:
        - "getOutType(int,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:271"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "hashCode()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "iterator()"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:279"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:null"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "customize(net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type)"
        - "iterator()"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:289"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:284"
        BranchSideFuncs:
        - "abs(int)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:283"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:290"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:289"
        BranchSideFuncs:
        - "abs(int)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:288"
        BranchSideFuncs:
        - "abs(int)"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:292"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:296"
        BranchSideFuncs:
        - "if_jump(int,org.objectweb.asm.Label)"
        - "instance_of_this()"
        - "make_label()"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:306"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:313"
        BranchSideFuncs:
        - "push(int)"
        - "new_instance(org.objectweb.asm.Type)"
        - "mark(org.objectweb.asm.Label)"
        - "invoke_constructor(org.objectweb.asm.Type)"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "dup()"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:326"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:335"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:334"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
        - "end_class()"
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Branch String: "net.sf.cglib.core.KeyFactory$Generator:327"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$Generator:null"
        BranchSideFuncs:
        - "push(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:241,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:243,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findNewInstance(java.lang.Class)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:244,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:244,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:245,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:248,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:248,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:251,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:253,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:249,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:255,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:256,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:256,1"
      Dst: "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:260,1"
      Dst: "[net.sf.cglib.core.TypeUtils].parseConstructor(org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:259,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:262,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:263,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:265,1"
      Dst: "[net.sf.cglib.core.KeyFactory$Generator].getCustomizers(java.lang.Class)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:269,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:269,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:269,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:270,1"
      Dst: "[net.sf.cglib.core.FieldTypeCustomizer].getOutType(int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:272,1"
      Dst: "[org.objectweb.asm.Type].hashCode()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:274,1"
      Dst: "[net.sf.cglib.core.KeyFactory$Generator].getFieldName(int)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:273,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:277,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:278,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:280,1"
      Dst: "[net.sf.cglib.core.FieldTypeCustomizer].customize(net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:282,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:284,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:285,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:289,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:291,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:294,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:295,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:302,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:304,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].instance_of_this()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:305,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:310,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast_this()"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:312,1"
      Dst: "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:316,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:323,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:325,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:328,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:329,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:333,1"
      Dst: "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.KeyFactory$Generator:339,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 29
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.core.ReflectUtils].findNewInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 342
    functionDepth: 1
    returnType: "java.lang.reflect.Method"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:338"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:341"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:337,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:338,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.core.ReflectUtils:338,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:339,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:339,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$Generator].getFieldName(int)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$Generator"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$Generator:343,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 415
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "int"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].hash_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.CodeEmitter].swap(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].hash_primitive(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].hash_object(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionUses: 2
    ICount: 23
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:400"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:403"
        BranchSideFuncs:
        - "hash_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:402"
        BranchSideFuncs:
        - "swap(org.objectweb.asm.Type,org.objectweb.asm.Type)"
        - "isPrimitive(org.objectweb.asm.Type)"
        - "push(int)"
    - Branch String: "net.sf.cglib.core.EmitUtils:407"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:410"
        BranchSideFuncs:
        - "hash_primitive(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:409"
        BranchSideFuncs:
        - "hash_object(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.internal.CustomizerRegistry)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:400,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:401,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.EmitUtils:403,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:404,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:405,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:407,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:408,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_primitive(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:410,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_object(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.internal.CustomizerRegistry)"
    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: "[net.sf.cglib.core.EmitUtils].hash_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 431
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "int"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$7].<init>(net.sf.cglib.core.CodeEmitter,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    functionUses: 1
    ICount: 16
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:417,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:419,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:420,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:421,1"
      Dst: "[net.sf.cglib.core.EmitUtils$7].<init>(net.sf.cglib.core.CodeEmitter,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.EmitUtils:421,1"
      Dst: "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:426,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:427,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:428,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    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: "[net.sf.cglib.core.EmitUtils$7].<init>(net.sf.cglib.core.CodeEmitter,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$7"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$7:421,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: "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.ProcessArrayCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$7].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$9].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$8].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].processElement(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.ProcessArrayCallback].processElement(org.objectweb.asm.Type)"
    functionUses: 3
    ICount: 25
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:104,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getComponentType(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:105,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.core.EmitUtils:106,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:107,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:109,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.core.EmitUtils:110,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:115,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.core.EmitUtils:117,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:118,1"
      Dst: "[net.sf.cglib.core.ProcessArrayCallback].processElement(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:119,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - Src: "net.sf.cglib.core.EmitUtils:124,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].arraylength()"
    - Src: "net.sf.cglib.core.EmitUtils:125,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_icmp(int,org.objectweb.asm.Label)"
    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: "[net.sf.cglib.core.EmitUtils].hash_primitive(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 477
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSort()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.EmitUtils].hash_long(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:459,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "net.sf.cglib.core.EmitUtils:462,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:463,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:467,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:474,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_long(net.sf.cglib.core.CodeEmitter)"
    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: 5
  - functionName: "[net.sf.cglib.core.EmitUtils].hash_long(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 486
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:480,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.core.EmitUtils:481,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:482,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:484,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].cast_numeric(org.objectweb.asm.Type,org.objectweb.asm.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: "[net.sf.cglib.core.EmitUtils].hash_object(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 433
    functionLinenumberEnd: 457
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.core.KeyFactory$3].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.KeyFactory$1].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.KeyFactory$4].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.HashCodeCustomizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 37
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:439"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:445"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:444"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:440"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:444"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:443"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:445"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:451"
        BranchSideFuncs:
        - "hasNext()"
        - "get(java.lang.Class)"
        - "next()"
        - "iterator()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:450"
        BranchSideFuncs:
        - "push(int)"
        - "pop()"
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
    - Branch String: "net.sf.cglib.core.EmitUtils:446"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:449"
        BranchSideFuncs:
        - "hasNext()"
        - "get(java.lang.Class)"
        - "next()"
        - "customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "iterator()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:448"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:434,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:436,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:437,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:439,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:439,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.EmitUtils:439,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.EmitUtils:439,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.EmitUtils:440,1"
      Dst: "[net.sf.cglib.core.HashCodeCustomizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:447,1"
      Dst: "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:449,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:451,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:452,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:453,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils:454,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(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: 11
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 513
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Label"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils$8].<init>(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.EmitUtils$8].processElement(org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:507,1"
      Dst: "[net.sf.cglib.core.EmitUtils$8].<init>(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.EmitUtils:511,1"
      Dst: "[net.sf.cglib.core.EmitUtils$8].processElement(org.objectweb.asm.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: "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 620
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.EmitUtils$ArrayDelimiters"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils$9].<init>(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    - "[net.sf.cglib.core.EmitUtils].append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:610"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:610"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
        - "append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:609"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:611,1"
      Dst: "[net.sf.cglib.core.EmitUtils$9].<init>(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    - Src: "net.sf.cglib.core.EmitUtils:618,1"
      Dst: "[net.sf.cglib.core.EmitUtils].append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    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: "[net.sf.cglib.core.EmitUtils$9].<init>(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$9"
    linkageType: ""
    functionLinenumber: 610
    functionLinenumberEnd: 612
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.EmitUtils$ArrayDelimiters"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$9:611,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: "[net.sf.cglib.core.EmitUtils].append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 625
    functionLinenumberEnd: 682
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.EmitUtils$ArrayDelimiters"
    - "net.sf.cglib.core.internal.CustomizerRegistry"
    - "net.sf.cglib.core.ProcessArrayCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getSort()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - "[net.sf.cglib.core.EmitUtils].shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.core.KeyFactory$1].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.KeyFactory$4].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionUses: 2
    ICount: 93
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:628"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:651"
        BranchSideFuncs:
        - "getSort()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:650"
        BranchSideFuncs:
        - "isArray(org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.core.EmitUtils:651"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:667"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:666"
        BranchSideFuncs:
        - "ifnull(org.objectweb.asm.Label)"
        - "hasNext()"
        - "get(java.lang.Class)"
        - "next()"
        - "iterator()"
        - "dup()"
    - Branch String: "net.sf.cglib.core.EmitUtils:655"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:660"
        BranchSideFuncs:
        - "swap()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:659"
        BranchSideFuncs:
        - "process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
        - "shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.EmitUtils:655"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:660"
        BranchSideFuncs:
        - "swap()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:659"
        BranchSideFuncs:
        - "process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
        - "shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.EmitUtils:655"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:660"
        BranchSideFuncs:
        - "swap()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:659"
        BranchSideFuncs:
        - "process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
        - "shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.EmitUtils:662"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:675"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:674"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "pop()"
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
        - "push(java.lang.String)"
    - Branch String: "net.sf.cglib.core.EmitUtils:662"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:675"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:674"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "pop()"
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
        - "push(java.lang.String)"
    - Branch String: "net.sf.cglib.core.EmitUtils:662"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:675"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:674"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "pop()"
        - "goTo(org.objectweb.asm.Label)"
        - "mark(org.objectweb.asm.Label)"
        - "push(java.lang.String)"
    - Branch String: "net.sf.cglib.core.EmitUtils:669"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:672"
        BranchSideFuncs:
        - "hasNext()"
        - "get(java.lang.Class)"
        - "next()"
        - "customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "iterator()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:671"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:626,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:628,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrimitive(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:629,1"
      Dst: "[org.objectweb.asm.Type].getSort()"
    - Src: "net.sf.cglib.core.EmitUtils:633,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:651,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isArray(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:652,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:653,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:654,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.EmitUtils:655,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:656,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:660,1"
      Dst: "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:661,1"
      Dst: "[net.sf.cglib.core.EmitUtils].shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.core.EmitUtils:669,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class)"
    - Src: "net.sf.cglib.core.EmitUtils:669,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.EmitUtils:669,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.EmitUtils:669,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.EmitUtils:670,1"
      Dst: "[net.sf.cglib.core.Customizer].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:675,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:676,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:677,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 23
    CyclomaticComplexity: 16
  - functionName: "[net.sf.cglib.core.EmitUtils].shrinkStringBuffer(net.sf.cglib.core.CodeEmitter,int)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 691
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.Type)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:684,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:686,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:687,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:688,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].math(int,org.objectweb.asm.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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$4"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.impl.FieldProviderTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:195,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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$4"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 202
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 15
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:197,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:198,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:199,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:200,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processDefault()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$4"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$4:203,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.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: "[net.sf.cglib.core.EmitUtils$9].processElement(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$9"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 617
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$9:613,1"
      Dst: "[net.sf.cglib.core.EmitUtils].append_string_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry,net.sf.cglib.core.ProcessArrayCallback)"
    - Src: "net.sf.cglib.core.EmitUtils$9:614,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils$9:615,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils$6].<init>(org.objectweb.asm.Type,org.objectweb.asm.Type,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$6"
    linkageType: ""
    functionLinenumber: 510
    functionLinenumberEnd: 512
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassInfo].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$6:511,1"
      Dst: "[net.sf.cglib.core.ClassInfo].<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: "[net.sf.cglib.core.ReflectUtils$6].getType()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$6"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionDepth: 0
    returnType: "org.objectweb.asm.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: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils$6].getSuperType()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$6"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    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: "[net.sf.cglib.core.ReflectUtils$6].getInterfaces()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$6"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "org.objectweb.asm.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getInterfaces()"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$6:519,1"
      Dst: "[java.lang.Class].getInterfaces()"
    - Src: "net.sf.cglib.core.ReflectUtils$6:519,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(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: "[net.sf.cglib.core.ReflectUtils$6].getModifiers()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$6"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 523
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$6:522,1"
      Dst: "[java.lang.Class].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DebuggingClassWriter$1].<init>(net.sf.cglib.core.DebuggingClassWriter)"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.DebuggingClassWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:74,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: "[net.sf.cglib.core.DebuggingClassWriter$1].run()"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter$1"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DebuggingClassWriter].access$001(net.sf.cglib.core.DebuggingClassWriter)"
    - "[org.objectweb.asm.ClassWriter].toByteArray()"
    - "[java.lang.String].replace(char,char)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    - "[java.io.File].mkdirs()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[java.io.FilterOutputStream].write(byte[])"
    - "[java.io.FilterOutputStream].close()"
    - "[org.objectweb.asm.ClassReader].<init>(byte[])"
    - "[java.io.PrintWriter].<init>(java.io.Writer)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream)"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - "[java.io.PrintWriter].flush()"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,char,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    functionUses: 1
    ICount: 71
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DebuggingClassWriter$1:79"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DebuggingClassWriter$1:109"
        BranchSideFuncs:
        - "write(byte[])"
        - "getParentFile()"
        - "replace(char,char)"
        - "mkdirs()"
      - BranchSide: "net.sf.cglib.core.DebuggingClassWriter$1:108"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DebuggingClassWriter$1:92"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DebuggingClassWriter$1:107"
        BranchSideFuncs:
        - "accept(org.objectweb.asm.ClassVisitor,int)"
        - "<init>(java.io.File,java.lang.String)"
        - "flush()"
        - "<init>(java.io.OutputStream)"
        - "<init>(java.io.File)"
        - "newInstance(java.lang.Object[])"
        - "<init>(java.lang.String)"
        - "<init>(byte[])"
        - "<init>(java.io.Writer)"
        - "close()"
      - BranchSide: "net.sf.cglib.core.DebuggingClassWriter$1:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:78,1"
      Dst: "[net.sf.cglib.core.DebuggingClassWriter].access$001(net.sf.cglib.core.DebuggingClassWriter)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:78,1"
      Dst: "[org.objectweb.asm.ClassWriter].toByteArray()"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:80,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:82,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,char,java.lang.String)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:82,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:82,1"
      Dst: "[java.io.File].getParentFile()"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:82,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:84,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:84,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:85,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:85,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:87,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:89,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:96,1"
      Dst: "[org.objectweb.asm.ClassReader].<init>(byte[])"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:97,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:97,1"
      Dst: "[java.io.PrintWriter].<init>(java.io.Writer)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:98,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:99,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:100,1"
      Dst: "[java.io.PrintWriter].flush()"
    - Src: "net.sf.cglib.core.DebuggingClassWriter$1:106,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<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: 9
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DebuggingClassWriter].access$001(net.sf.cglib.core.DebuggingClassWriter)"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "org.objectweb.asm.ClassVisitor"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.DebuggingClassWriter"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$1].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$1:65,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: "[net.sf.cglib.proxy.Enhancer$1].accept(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    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: "[net.sf.cglib.core.ClassNameReader$EarlyExitException].<init>()"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader$EarlyExitException"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassNameReader$EarlyExitException:29,1"
      Dst: "[java.lang.RuntimeException].<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: "[net.sf.cglib.beans.BulkBean$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:82,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBean$Generator].setTarget(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBean$Generator].setGetters(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBean$Generator].setSetters(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBean$Generator].setTypes(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBean$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:102,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.beans.BulkBean$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:106,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.beans.BulkBean$Generator].create()"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.beans.BulkBean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - "[net.sf.cglib.beans.BulkBean$BulkBeanKey].newInstance(java.lang.String,java.lang.String[],java.lang.String[],java.lang.String[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:110,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:110,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:112,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:113,1"
      Dst: "[net.sf.cglib.beans.BulkBean$BulkBeanKey].newInstance(java.lang.String,java.lang.String[],java.lang.String[],java.lang.String[])"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:114,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 326
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:319"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:321"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:320"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:322"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:324"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:323,1"
      Dst: "[java.lang.Class].getName()"
    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: "[net.sf.cglib.beans.BulkBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BulkBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:118,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:118,1"
      Dst: "[net.sf.cglib.beans.BulkBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BulkBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanEmitter"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 56
    functionDepth: 9
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class"
    - "java.lang.String[]"
    - "java.lang.String[]"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BulkBeanEmitter].validate(java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[],java.lang.reflect.Method[],java.lang.reflect.Method[])"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.beans.BulkBeanEmitter].generateGet(java.lang.Class,java.lang.reflect.Method[])"
    - "[net.sf.cglib.beans.BulkBeanEmitter].generateSet(java.lang.Class,java.lang.reflect.Method[])"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:44,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:48,1"
      Dst: "[net.sf.cglib.beans.BulkBeanEmitter].validate(java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[],java.lang.reflect.Method[],java.lang.reflect.Method[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:50,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:51,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:52,1"
      Dst: "[net.sf.cglib.beans.BulkBeanEmitter].generateGet(java.lang.Class,java.lang.reflect.Method[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:53,1"
      Dst: "[net.sf.cglib.beans.BulkBeanEmitter].generateSet(java.lang.Class,java.lang.reflect.Method[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:54,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: "[net.sf.cglib.beans.BulkBeanEmitter].validate(java.lang.Class,java.lang.String[],java.lang.String[],java.lang.Class[],java.lang.reflect.Method[],java.lang.reflect.Method[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanEmitter"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 156
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.Class"
    - "java.lang.String[]"
    - "java.lang.String[]"
    - "java.lang.Class[]"
    - "java.lang.reflect.Method[]"
    - "java.lang.reflect.Method[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BulkBeanException].<init>(java.lang.String,int)"
    - "[net.sf.cglib.core.ReflectUtils].findDeclaredMethod(java.lang.Class,java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class)"
    functionUses: 1
    ICount: 61
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:128"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:129"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:128"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:128"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:132"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:131"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:132"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:154"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:153"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:133"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:144"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:143"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:135"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:139"
        BranchSideFuncs:
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:138"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:139"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:142"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:141"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:144"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:132"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPrivate(int)"
        - "findDeclaredMethod(java.lang.Class,java.lang.String,java.lang.Class[])"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:131"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:146"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:149"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:129,1"
      Dst: "[net.sf.cglib.beans.BulkBeanException].<init>(java.lang.String,int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:134,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findDeclaredMethod(java.lang.Class,java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:135,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:137,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:139,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:139,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(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: 19
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.ReflectUtils].findDeclaredMethod(java.lang.Class,java.lang.String,java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 407
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.Class].getSuperclass()"
    - "[java.lang.NoSuchMethodException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:399"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:405"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:401,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:403,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.sf.cglib.core.ReflectUtils:406,1"
      Dst: "[java.lang.NoSuchMethodException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.NoSuchMethodException"
      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: "[net.sf.cglib.beans.BulkBeanEmitter].generateGet(java.lang.Class,java.lang.reflect.Method[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanEmitter"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 79
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.reflect.Method[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter$State:net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 32
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:59"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:76"
        BranchSideFuncs:
        - "make_local()"
        - "store_local(net.sf.cglib.core.Local)"
        - "getType(java.lang.Class)"
        - "checkcast(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:75"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:64"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:76"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:75"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:65"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:60"
        BranchSideFuncs:
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "box(org.objectweb.asm.Type)"
        - "load_local(net.sf.cglib.core.Local)"
        - "push(int)"
        - "load_arg(int)"
        - "aastore()"
        - "getSignature()"
        - "getMethodInfo(java.lang.reflect.Member)"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:59"
        BranchSideFuncs:
        - "make_local()"
        - "store_local(net.sf.cglib.core.Local)"
        - "getType(java.lang.Class)"
        - "checkcast(org.objectweb.asm.Type)"
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:58,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:60,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:61,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:61,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:62,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:63,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:66,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:68,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:69,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:70,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:71,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:71,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:71,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:72,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:76,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:77,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 7
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.beans.BulkBeanEmitter].generateSet(java.lang.Class,java.lang.reflect.Method[])"
    functionSourceFile: "net.sf.cglib.beans.BulkBeanEmitter"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 120
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.reflect.Method[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter$State:net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.Block].end()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].athrow()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 54
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:83"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:116"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
        - "push(int)"
        - "checkcast(org.objectweb.asm.Type)"
        - "make_local(org.objectweb.asm.Type)"
        - "getType(java.lang.Class)"
        - "begin_block()"
        - "load_arg(int)"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:115"
        BranchSideFuncs:
        - "return_value()"
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:92"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:106"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:105"
        BranchSideFuncs:
        - "dup_x1()"
        - "load_local(net.sf.cglib.core.Local)"
        - "catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "end()"
        - "swap()"
        - "athrow()"
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:93"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:84"
        BranchSideFuncs:
        - "getMethodInfo(java.lang.reflect.Member)"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:83"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
        - "push(int)"
        - "checkcast(org.objectweb.asm.Type)"
        - "make_local(org.objectweb.asm.Type)"
        - "getType(java.lang.Class)"
        - "begin_block()"
        - "load_arg(int)"
    - Branch String: "net.sf.cglib.beans.BulkBeanEmitter:96"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:100"
        BranchSideFuncs:
        - "iinc(net.sf.cglib.core.Local,int)"
      - BranchSide: "net.sf.cglib.beans.BulkBeanEmitter:99"
        BranchSideFuncs:
        - "unbox(org.objectweb.asm.Type)"
        - "getSignature()"
        - "dup2()"
        - "getArgumentTypes()"
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "aaload(int)"
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:82,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:84,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:85,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:86,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:87,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:88,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:88,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:90,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:94,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:97,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].iinc(net.sf.cglib.core.Local,int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:100,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:101,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:102,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:102,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:102,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:103,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:106,1"
      Dst: "[net.sf.cglib.core.Block].end()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:107,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:108,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:109,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:110,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:111,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:113,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].athrow()"
    - Src: "net.sf.cglib.beans.BulkBeanEmitter:118,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 11
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.Block].end()"
    functionSourceFile: "net.sf.cglib.core.Block"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].mark()"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.Block:36"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.Block:39"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.Block:38"
        BranchSideFuncs:
        - "mark()"
    Callsites:
    - Src: "net.sf.cglib.core.Block:37,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.core.Block:39,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark()"
    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: "[net.sf.cglib.beans.BulkBean$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BulkBean$Generator:122,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BulkBean$Generator:127,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,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: "[net.sf.cglib.beans.BulkBean$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.BulkBean$Generator"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$6].<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1141
    functionLinenumberEnd: 1143
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.proxy.Enhancer"
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1142,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: "[net.sf.cglib.proxy.Enhancer$6].getClassLoader()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassLoader()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1144,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$6].getOriginalModifiers(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1146
    functionLinenumberEnd: 1148
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1147,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1147,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1149
    functionLinenumberEnd: 1151
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 7
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1150,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1150,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1152
    functionLinenumberEnd: 1155
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].emitCurrentCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1153,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitCurrentCallback(net.sf.cglib.core.CodeEmitter,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: "[net.sf.cglib.proxy.Enhancer].emitCurrentCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1254
    functionLinenumberEnd: 1267
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 18
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1255,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:1256,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1256,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1257,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1258,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.proxy.Enhancer:1259,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer:1260,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.proxy.Enhancer:1262,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1265,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1316
    functionLinenumberEnd: 1318
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1317,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: "[net.sf.cglib.proxy.Enhancer$6].getImplSignature(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1155
    functionLinenumberEnd: 1157
    functionDepth: 2
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[java.lang.Integer].intValue()"
    - "[net.sf.cglib.proxy.Enhancer].rename(net.sf.cglib.core.Signature,int)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1156,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1156,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1156,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1156,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].rename(net.sf.cglib.core.Signature,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: "[net.sf.cglib.proxy.Enhancer].rename(net.sf.cglib.core.Signature,int)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionDepth: 1
    returnType: "net.sf.cglib.core.Signature"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.Signature"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:516,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.Enhancer:516,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    - Src: "net.sf.cglib.proxy.Enhancer:517,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.proxy.Enhancer:517,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    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: "[net.sf.cglib.proxy.Enhancer$6].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1162
    functionLinenumberEnd: 1195
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 35
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1164"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1190"
        BranchSideFuncs:
        - "getSignature()"
        - "load_args()"
        - "super_invoke(net.sf.cglib.core.Signature)"
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1166"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1174"
        BranchSideFuncs:
        - "getArgumentTypes()"
        - "load_arg(int)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1173"
        BranchSideFuncs:
        - "invoke_virtual_this(net.sf.cglib.core.Signature)"
        - "equals(java.lang.Object)"
        - "getReturnType()"
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1169"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1166"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1165"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1187"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1190"
        BranchSideFuncs:
        - "checkcast(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1189"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1163,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1163,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1166,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1167,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1169,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1170,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1174,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1176,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1191,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1192,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke(net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$6"
    linkageType: ""
    functionLinenumber: 1195
    functionLinenumberEnd: 1210
    functionDepth: 9
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    functionUses: 5
    ICount: 20
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1197"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1209"
        BranchSideFuncs:
        - "isAbstract(int)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1208"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer$6:1198"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1209"
        BranchSideFuncs:
        - "return_value()"
        - "getfield(java.lang.String)"
        - "load_args()"
        - "mark(org.objectweb.asm.Label)"
        - "make_label()"
        - "load_this()"
        - "if_jump(int,org.objectweb.asm.Label)"
        - "super_invoke()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer$6:1208"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$6:1196,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1198,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1198,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1199,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1200,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1201,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1202,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1204,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1205,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1206,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer$6:1207,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(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: 4
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 951
    functionLinenumberEnd: 953
    functionDepth: 8
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:952,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.core.EmitUtils:952,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,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: "[net.sf.cglib.transform.TransformingClassLoader].<init>(java.lang.ClassLoader,net.sf.cglib.transform.ClassFilter,net.sf.cglib.transform.ClassTransformerFactory)"
    functionSourceFile: "net.sf.cglib.transform.TransformingClassLoader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "net.sf.cglib.transform.ClassFilter"
    - "net.sf.cglib.transform.ClassTransformerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassLoader].<init>(java.lang.ClassLoader,java.lang.ClassLoader,net.sf.cglib.transform.ClassFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.TransformingClassLoader:26,1"
      Dst: "[net.sf.cglib.transform.AbstractClassLoader].<init>(java.lang.ClassLoader,java.lang.ClassLoader,net.sf.cglib.transform.ClassFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.TransformingClassLoader].getGenerator(org.objectweb.asm.ClassReader)"
    functionSourceFile: "net.sf.cglib.transform.TransformingClassLoader"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 1
    returnType: "net.sf.cglib.core.ClassGenerator"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.TransformingClassGenerator].<init>(net.sf.cglib.core.ClassGenerator,net.sf.cglib.transform.ClassTransformer)"
    - "[net.sf.cglib.transform.AbstractClassLoader].getGenerator(org.objectweb.asm.ClassReader)"
    - "[net.sf.cglib.transform.ClassTransformerFactory].newInstance()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.TransformingClassLoader:31,1"
      Dst: "[net.sf.cglib.transform.ClassTransformerFactory].newInstance()"
    - Src: "net.sf.cglib.transform.TransformingClassLoader:32,1"
      Dst: "[net.sf.cglib.transform.AbstractClassLoader].getGenerator(org.objectweb.asm.ClassReader)"
    - Src: "net.sf.cglib.transform.TransformingClassLoader:32,1"
      Dst: "[net.sf.cglib.transform.TransformingClassGenerator].<init>(net.sf.cglib.core.ClassGenerator,net.sf.cglib.transform.ClassTransformer)"
    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: "[net.sf.cglib.core.Block].getCodeEmitter()"
    functionSourceFile: "net.sf.cglib.core.Block"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "net.sf.cglib.core.CodeEmitter"
    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: "[net.sf.cglib.core.EmitUtils$4].<init>(java.util.Map,int,int,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$4"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.util.Map"
    - "int"
    - "int"
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$4:231,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: "[net.sf.cglib.core.EmitUtils$4].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$4"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 241
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$16].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$12].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.Enhancer$5].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionUses: 2
    ICount: 26
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils$4:234"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$4:238"
        BranchSideFuncs:
        - "processCase(java.lang.Object,org.objectweb.asm.Label)"
        - "get(int)"
        - "pop()"
      - BranchSide: "net.sf.cglib.core.EmitUtils$4:237"
        BranchSideFuncs:
        - "stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$4:233,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.EmitUtils$4:233,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$4:235,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils$4:236,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.EmitUtils$4:236,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils$4:238,1"
      Dst: "[net.sf.cglib.core.EmitUtils].stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    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: "[net.sf.cglib.core.EmitUtils].stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 246
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.lang.String].length()"
    - "[net.sf.cglib.core.EmitUtils$3].<init>(int)"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.EmitUtils$4].<init>(java.util.Map,int,int,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:222,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.EmitUtils:222,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.EmitUtils:223,1"
      Dst: "[net.sf.cglib.core.EmitUtils$3].<init>(int)"
    - Src: "net.sf.cglib.core.EmitUtils:223,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:228,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:229,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.core.EmitUtils:230,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:231,1"
      Dst: "[net.sf.cglib.core.EmitUtils].getSwitchKeys(java.util.Map)"
    - Src: "net.sf.cglib.core.EmitUtils:231,1"
      Dst: "[net.sf.cglib.core.EmitUtils$4].<init>(java.util.Map,int,int,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:231,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    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: "[net.sf.cglib.core.EmitUtils$3].<init>(int)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$3"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$3:223,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: "[net.sf.cglib.core.EmitUtils$4].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$4"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$4:242,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: "[jdk.internal.org.objectweb.asm.Constants].<init>()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Constants"
    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.Constants:214,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.org.objectweb.asm.Constants].checkAsmExperimental(java.lang.Object)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Constants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].replace(char,char)"
    - "[jdk.internal.org.objectweb.asm.Constants].isWhitelisted(java.lang.String)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - "[jdk.internal.org.objectweb.asm.Constants].checkIsPreview(java.io.InputStream)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:219"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:222"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Constants:217,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:218,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:218,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:219,1"
      Dst: "[jdk.internal.org.objectweb.asm.Constants].isWhitelisted(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:220,1"
      Dst: "[jdk.internal.org.objectweb.asm.Constants].checkIsPreview(java.io.InputStream)"
    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: 2
  - functionName: "[jdk.internal.org.objectweb.asm.Constants].isWhitelisted(java.lang.String)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Constants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.regex.Pattern].matches(java.lang.String,java.lang.CharSequence)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:225"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:229"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:228"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:229"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:229"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:228"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:230"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:229"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:228"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:232"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Constants:225,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:229,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:229,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:229,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:229,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:230,1"
      Dst: "[java.util.regex.Pattern].matches(java.lang.String,java.lang.CharSequence)"
    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: 4
  - functionName: "[jdk.internal.org.objectweb.asm.Constants].checkIsPreview(java.io.InputStream)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Constants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - "[java.io.DataInputStream].readInt()"
    - "[java.io.DataInputStream].readUnsignedShort()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:237"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:241"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:240"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.org.objectweb.asm.Constants:247"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:251"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Constants:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Constants:238,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:241,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:242,1"
      Dst: "[java.io.DataInputStream].readInt()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:243,1"
      Dst: "[java.io.DataInputStream].readUnsignedShort()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:244,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "jdk.internal.org.objectweb.asm.Constants:245,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "jdk.internal.org.objectweb.asm.Constants:245,1"
      Dst: "[java.lang.IllegalStateException].<init>(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: 11
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$4].<init>()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$4"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$4:135,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: "[net.sf.cglib.core.KeyFactory$4].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$4"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$4:137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer].<init>()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:25,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - "[java.util.HashMap].<init>()"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    functionUses: 12
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.FieldProviderTransformer:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:54"
        BranchSideFuncs:
        - "add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:53"
        BranchSideFuncs:
        - "<init>()"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:51,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:52,1"
      Dst: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:55,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:56,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 19
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.FieldProviderTransformer:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:65"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:60,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:62,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:63,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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 79
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].generate()"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionUses: 11
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.FieldProviderTransformer:68"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:76"
        BranchSideFuncs:
        - "end_class()"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:68,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:70,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].generate()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:74,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:77,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer].generate()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 100
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].keySet()"
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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].size()"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].initFieldProvider(java.lang.String[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].getNames()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].getTypes()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].getField(java.lang.String[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].setField(java.lang.String[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].setByIndex(java.lang.String[],int[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].getByIndex(java.lang.String[],int[])"
    - "[java.util.Map].keySet()"
    - "[java.util.Map].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 28
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.FieldProviderTransformer:84"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:87"
        BranchSideFuncs:
        - "getTypes()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "setByIndex(java.lang.String[],int[])"
        - "getNames()"
        - "getField(java.lang.String[])"
        - "setField(java.lang.String[])"
        - "initFieldProvider(java.lang.String[])"
        - "getByIndex(java.lang.String[],int[])"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:81,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:81,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:81,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:88,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:92,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].initFieldProvider(java.lang.String[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:93,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getNames()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:94,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getTypes()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:95,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getField(java.lang.String[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:96,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].setField(java.lang.String[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:97,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].setByIndex(java.lang.String[],int[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:98,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getByIndex(java.lang.String[],int[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].initFieldProvider(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 29
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.FieldProviderTransformer:109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.FieldProviderTransformer:115"
        BranchSideFuncs:
        - "getClassType()"
        - "putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:102,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:103,1"
      Dst: "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:104,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:106,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:107,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:108,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:112,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:113,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getNames()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 125
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:120,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:121,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:121,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:122,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:123,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getTypes()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:127,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:128,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:128,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getstatic(org.objectweb.asm.Type,java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:129,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:130,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getField(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 189
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:173,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:174,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:175,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:176,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:176,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:187,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$3"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.impl.FieldProviderTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:176,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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].setField(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 208
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:191,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:192,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:193,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:195,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:195,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:206,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].setByIndex(java.lang.String[],int[])"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 151
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:134,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:135,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:136,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:138,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer$1].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:138,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:149,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.FieldProviderTransformer].getByIndex(java.lang.String[],int[])"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 169
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:153,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:154,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:155,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:156,1"
      Dst: "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:156,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer:167,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].<init>(net.sf.cglib.transform.impl.FieldProviderTransformer,java.lang.String[],net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$2"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.transform.impl.FieldProviderTransformer"
    - "java.lang.String[]"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:156,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: "[net.sf.cglib.proxy.MixinBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinBeanEmitter"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],int[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinBeanEmitter:28,1"
      Dst: "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],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: "[net.sf.cglib.proxy.MixinBeanEmitter].getInterfaces(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinBeanEmitter"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "java.lang.Class[]"
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MixinBeanEmitter].getMethods(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.MixinBeanEmitter"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - "[net.sf.cglib.core.ReflectUtils].getPropertyMethods(java.beans.PropertyDescriptor[],boolean,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinBeanEmitter:36,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.MixinBeanEmitter:36,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getPropertyMethods(java.beans.PropertyDescriptor[],boolean,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: "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionDepth: 2
    returnType: "java.beans.PropertyDescriptor[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:360,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getPropertiesHelper(java.lang.Class,boolean,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: "[net.sf.cglib.core.ReflectUtils].getPropertyMethods(java.beans.PropertyDescriptor[],boolean,boolean)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "java.lang.reflect.Method[]"
    argCount: 3
    argTypes:
    - "java.beans.PropertyDescriptor[]"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.beans.PropertyDescriptor].getReadMethod()"
    - "[java.beans.PropertyDescriptor].getWriteMethod()"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.HashSet].size()"
    - "[java.util.HashSet].toArray(java.lang.Object[])"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Set].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:346"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:355"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:354"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
        - "remove(java.lang.Object)"
        - "size()"
    - Branch String: "net.sf.cglib.core.ReflectUtils:348"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:351"
        BranchSideFuncs:
        - "getReadMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:350"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:351"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:345"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getWriteMethod()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:344"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:345,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.core.ReflectUtils:349,1"
      Dst: "[java.beans.PropertyDescriptor].getReadMethod()"
    - Src: "net.sf.cglib.core.ReflectUtils:349,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:352,1"
      Dst: "[java.beans.PropertyDescriptor].getWriteMethod()"
    - Src: "net.sf.cglib.core.ReflectUtils:355,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:356,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.sf.cglib.core.ReflectUtils:356,1"
      Dst: "[java.util.Set].toArray(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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.transform.ClassFilterTransformer].<init>(net.sf.cglib.transform.ClassFilter,net.sf.cglib.transform.ClassTransformer)"
    functionSourceFile: "net.sf.cglib.transform.ClassFilterTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.ClassFilter"
    - "net.sf.cglib.transform.ClassTransformer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].<init>(net.sf.cglib.transform.ClassTransformer)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassFilterTransformer:24,1"
      Dst: "[net.sf.cglib.transform.AbstractClassFilterTransformer].<init>(net.sf.cglib.transform.ClassTransformer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassFilterTransformer].accept(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.ClassFilterTransformer"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    - "[net.sf.cglib.transform.ClassFilter].accept(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassFilterTransformer:29,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.transform.ClassFilterTransformer:29,1"
      Dst: "[net.sf.cglib.transform.ClassFilter].accept(java.lang.String)"
    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: "[net.sf.cglib.core.internal.LoadingCache$1].<init>()"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache$1"
    linkageType: ""
    functionLinenumber: 9
    functionLinenumberEnd: 11
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache$1:10,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: "[net.sf.cglib.core.internal.LoadingCache$1].apply(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache$1"
    linkageType: ""
    functionLinenumber: 11
    functionLinenumberEnd: 13
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: "[net.sf.cglib.transform.impl.AddInitTransformer].<init>(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddInitTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddInitTransformer:40"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:43"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:42"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddInitTransformer:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:43"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:42"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddInitTransformer:42"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:45"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:36,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:37,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:39,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:39,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:41,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:42,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:43,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:43,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 5
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.AddInitTransformer"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 61
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].<init>(net.sf.cglib.transform.impl.AddInitTransformer,net.sf.cglib.core.CodeEmitter)"
    functionUses: 33
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddInitTransformer:49"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:60"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.transform.impl.AddInitTransformer,net.sf.cglib.core.CodeEmitter)"
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:48,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:49,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:49,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer:50,1"
      Dst: "[net.sf.cglib.transform.impl.AddInitTransformer$1].<init>(net.sf.cglib.transform.impl.AddInitTransformer,net.sf.cglib.core.CodeEmitter)"
    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: "[net.sf.cglib.transform.impl.AddInitTransformer$1].<init>(net.sf.cglib.transform.impl.AddInitTransformer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddInitTransformer$1"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.impl.AddInitTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer$1:50,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.LocalVariablesSorter].remap(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    functionUses: 11
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:94,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].remap(int,int)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:94,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.LocalVariablesSorter].remap(int,int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 39
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:125"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:128"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:127"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:130"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:135"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
        - "max(int,int)"
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:134"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:136"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:141"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:131,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:132,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,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: 7
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.LocalVariablesSorter].visitIincInsn(int,int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.LocalVariablesSorter].remap(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitIincInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitIincInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIincInsn(int,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:98,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].remap(int,int)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:98,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,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: "[net.sf.cglib.core.LocalVariablesSorter].visitMaxs(int,int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMaxs(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitMaxs(int,int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:102,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,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: "[net.sf.cglib.core.LocalVariablesSorter].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 1
    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:
    - "[net.sf.cglib.core.LocalVariablesSorter].remap(int)"
    - "[org.objectweb.asm.MethodVisitor].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[org.objectweb.asm.MethodWriter].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionUses: 5
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:113,1"
      Dst: "[net.sf.cglib.core.LocalVariablesSorter].remap(int)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:113,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,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: "[net.sf.cglib.core.LocalVariablesSorter].remap(int)"
    functionSourceFile: "net.sf.cglib.core.LocalVariablesSorter"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:145"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:148"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:147"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:149"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:148"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:147"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:150"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:153"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:152"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:151"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:150"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.LocalVariablesSorter:153"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:156"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.LocalVariablesSorter:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.LocalVariablesSorter:154,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.core.LocalVariablesSorter:154,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.proxy.UndeclaredThrowableException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.sf.cglib.proxy.UndeclaredThrowableException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.UndeclaredThrowableException:30,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<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: "[net.sf.cglib.proxy.UndeclaredThrowableException].getUndeclaredThrowable()"
    functionSourceFile: "net.sf.cglib.proxy.UndeclaredThrowableException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeGenerationException].getCause()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.UndeclaredThrowableException:34,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].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: "[net.sf.cglib.core.CodeGenerationException].getCause()"
    functionSourceFile: "net.sf.cglib.core.CodeGenerationException"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.lang.Throwable"
    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: "[net.sf.cglib.proxy.NoOp$1].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.NoOp$1"
    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: "net.sf.cglib.proxy.NoOp$1:27,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: "[net.sf.cglib.transform.FieldVisitorTee].<init>(org.objectweb.asm.FieldVisitor,org.objectweb.asm.FieldVisitor)"
    functionSourceFile: "net.sf.cglib.transform.FieldVisitorTee"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.FieldVisitor"
    - "org.objectweb.asm.FieldVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.FieldVisitor].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.FieldVisitorTee:28,1"
      Dst: "[org.objectweb.asm.FieldVisitor].<init>(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: "[net.sf.cglib.transform.FieldVisitorTee].visitAnnotation(java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.FieldVisitorTee"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[net.sf.cglib.transform.FieldVisitorTee].visitAnnotation(java.lang.String,boolean)"
    - "[org.objectweb.asm.FieldVisitor].visitAnnotation(java.lang.String,boolean)"
    - "[org.objectweb.asm.FieldWriter].visitAnnotation(java.lang.String,boolean)"
    functionUses: 5
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.FieldVisitorTee:34,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitAnnotation(java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.FieldVisitorTee:34,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.AnnotationVisitor"
    - "org.objectweb.asm.AnnotationVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].<init>(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    functionUses: 13
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.AnnotationVisitorTee:25"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.AnnotationVisitorTee:27"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.AnnotationVisitorTee:26"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.AnnotationVisitorTee:27"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.AnnotationVisitorTee:29"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.AnnotationVisitorTee:28"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:29,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].<init>(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    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: "[net.sf.cglib.transform.AnnotationVisitorTee].<init>(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.AnnotationVisitor"
    - "org.objectweb.asm.AnnotationVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.AnnotationVisitor].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:33,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].<init>(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: "[net.sf.cglib.transform.FieldVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    functionSourceFile: "net.sf.cglib.transform.FieldVisitorTee"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.FieldVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.FieldVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.FieldWriter].visitAttribute(org.objectweb.asm.Attribute)"
    functionUses: 4
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.FieldVisitorTee:39,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.FieldVisitorTee].visitEnd()"
    functionSourceFile: "net.sf.cglib.transform.FieldVisitorTee"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.FieldVisitorTee].visitEnd()"
    - "[org.objectweb.asm.FieldVisitor].visitEnd()"
    - "[org.objectweb.asm.FieldWriter].visitEnd()"
    functionUses: 4
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.FieldVisitorTee:44,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.FieldVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.FieldVisitorTee"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.FieldWriter].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.FieldVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.FieldVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.FieldVisitorTee:49,1"
      Dst: "[org.objectweb.asm.FieldVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.FieldVisitorTee:49,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].<init>(net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder,int,java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder"
    - "int"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:147,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: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 158
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 6
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:150"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:157"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.String)"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:156"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:150"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:157"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.String)"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:156"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:152"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:155"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:151,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:152,1"
      Dst: "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1:153,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: 6
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].<init>(java.lang.Class,java.lang.Class[],boolean)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData"
    linkageType: ""
    functionLinenumber: 410
    functionLinenumberEnd: 426
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].getConstructor(java.lang.Class,java.lang.Class[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:415"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:419"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:418"
        BranchSideFuncs:
        - "getConstructor(java.lang.Class,java.lang.Class[])"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:411,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:414,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:420,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getConstructor(java.lang.Class,java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:423,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<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: 6
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].newInstance(java.lang.Class[],java.lang.Object[],net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 456
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Class[]"
    - "java.lang.Object[]"
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].setThreadCallbacks(net.sf.cglib.proxy.Callback[])"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.reflect.Constructor,java.lang.Object[])"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    functionUses: 1
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:444"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:448"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:447"
        BranchSideFuncs:
        - "newInstance(java.lang.reflect.Constructor,java.lang.Object[])"
    - Branch String: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:445"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:450"
        BranchSideFuncs:
        - "newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:441,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].setThreadCallbacks(net.sf.cglib.proxy.Callback[])"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:445,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:448,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.reflect.Constructor,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:451,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],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: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].setThreadCallbacks(net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 468
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 4
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:461,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:463,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.proxy.Enhancer$EnhancerFactoryData:465,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    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: 1
  - functionName: "[net.sf.cglib.reflect.FastClass$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:56,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClass$Generator].setType(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClass$Generator].create()"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.reflect.FastClass"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:64,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.FastClass$Generator:64,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.reflect.FastClass$Generator:65,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.reflect.FastClass$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:69,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.reflect.FastClass$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:73,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.reflect.FastClass$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClassEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:77,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.reflect.FastClass$Generator:77,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 110
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - "[net.sf.cglib.core.DuplicatesPredicate].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[net.sf.cglib.reflect.FastClassEmitter].emitIndexBySignature(java.util.List)"
    - "[net.sf.cglib.reflect.FastClassEmitter].emitIndexByClassArray(java.util.List)"
    - "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.EmitUtils].constructor_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.reflect.FastClassEmitter].invokeSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,int,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[jaz.Zer].size()"
    - "[java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:sun.awt.util.IdentityArrayList].size()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 66
    EdgeCount: 47
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter:53,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:55,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:56,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:59,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:60,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:61,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:62,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:63,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:64,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:66,1"
      Dst: "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:67,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:68,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:69,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate].<init>()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:70,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:70,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:70,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:74,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].emitIndexBySignature(java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:77,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].emitIndexByClassArray(java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:82,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:82,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:83,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:83,1"
      Dst: "[net.sf.cglib.core.EmitUtils].constructor_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:88,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:89,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:91,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].invokeSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,int,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:96,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:97,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:104,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:108,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 428
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[sun.awt.util.IdentityArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getDeclaredMethods()"
    - "[java.lang.Class].getSuperclass()"
    - "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - "[java.lang.Class].getInterfaces()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 5
    ICount: 21
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:413"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:416"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:415"
        BranchSideFuncs:
        - "getDeclaredMethods()"
        - "addAll(java.util.Collection)"
        - "asList(java.lang.Object[])"
    - Branch String: "net.sf.cglib.core.ReflectUtils:419"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:422"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:421"
        BranchSideFuncs:
        - "getInterfaces()"
    - Branch String: "net.sf.cglib.core.ReflectUtils:423"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:426"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:414,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.sf.cglib.core.ReflectUtils:416,1"
      Dst: "[java.lang.Class].getDeclaredMethods()"
    - Src: "net.sf.cglib.core.ReflectUtils:416,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.ReflectUtils:418,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.sf.cglib.core.ReflectUtils:420,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.core.ReflectUtils:422,1"
      Dst: "[java.lang.Class].getInterfaces()"
    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: "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "net.sf.cglib.core.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[net.sf.cglib.core.DuplicatesPredicate].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.RejectModifierPredicate].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.VisibilityPredicate].evaluate(java.lang.Object)"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].remove()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.Predicate].evaluate(java.lang.Object)"
    functionUses: 9
    ICount: 11
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CollectionUtils:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:56"
        BranchSideFuncs:
        - "evaluate(java.lang.Object)"
        - "next()"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:55"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.CollectionUtils:52"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:51"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:50"
        BranchSideFuncs:
        - "hasNext()"
    Callsites:
    - Src: "net.sf.cglib.core.CollectionUtils:50,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.sf.cglib.core.CollectionUtils:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.CollectionUtils:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.CollectionUtils:52,1"
      Dst: "[net.sf.cglib.core.Predicate].evaluate(java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:53,1"
      Dst: "[java.util.Iterator].remove()"
    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: "[net.sf.cglib.core.DuplicatesPredicate].<init>()"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collections].emptySet()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:41,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:42,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter].emitIndexBySignature(java.util.List)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 124
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.reflect.FastClassEmitter$1].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    - "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.reflect.FastClassEmitter].signatureSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter:113,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:114,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$1].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:114,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:119,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:120,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:121,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].signatureSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:122,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$1].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$1"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.reflect.FastClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$1:114,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: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "net.sf.cglib.core.Transformer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[jaz.Zer].size()"
    - "[net.sf.cglib.beans.FixedKeySet].size()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.DelayQueue:java.util.concurrent.LinkedBlockingQueue].add(java.lang.Object)"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.MethodInfoTransformer].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$13].transform(java.lang.Object)"
    - "[net.sf.cglib.proxy.Enhancer$2].transform(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClassEmitter$1].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$5].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$15].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$11].transform(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClassEmitter$2].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$3].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils$1].transform(java.lang.Object)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$1].transform(java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.Transformer].transform(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 7
    ICount: 13
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CollectionUtils:61"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:64"
        BranchSideFuncs:
        - "transform(java.lang.Object)"
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CollectionUtils:60,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.sf.cglib.core.CollectionUtils:60,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.sf.cglib.core.CollectionUtils:61,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.sf.cglib.core.CollectionUtils:61,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.CollectionUtils:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.CollectionUtils:62,1"
      Dst: "[net.sf.cglib.core.Transformer].transform(java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:62,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: 2
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter].signatureSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 164
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClassEmitter$3].<init>(net.sf.cglib.reflect.FastClassEmitter,net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[sun.awt.util.IdentityArrayList].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[jaz.Zer].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter:148,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$3].<init>(net.sf.cglib.reflect.FastClassEmitter,net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:160,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:160,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:159,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$3].<init>(net.sf.cglib.reflect.FastClassEmitter,net.sf.cglib.core.CodeEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$3"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.reflect.FastClassEmitter"
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:148,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: "[net.sf.cglib.reflect.FastClassEmitter].emitIndexByClassArray(java.util.List)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 146
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[net.sf.cglib.reflect.FastClassEmitter$2].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    - "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.reflect.FastClassEmitter].signatureSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.EmitUtils].method_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 23
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.FastClassEmitter:128"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter:139"
        BranchSideFuncs:
        - "transform(java.util.Collection,net.sf.cglib.core.Transformer)"
        - "load_args()"
        - "getInstance()"
        - "<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
        - "method_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter:127,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:128,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:130,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$2].<init>(net.sf.cglib.reflect.FastClassEmitter)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:130,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:136,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:138,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].signatureSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:141,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:142,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].<init>(net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:142,1"
      Dst: "[net.sf.cglib.core.EmitUtils].method_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:144,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    functionSourceFile: "net.sf.cglib.core.MethodInfoTransformer"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "net.sf.cglib.core.MethodInfoTransformer"
    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: "[net.sf.cglib.core.EmitUtils].method_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].member_switch_helper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:718,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_switch_helper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,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: "[net.sf.cglib.core.EmitUtils].member_switch_helper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 731
    functionLinenumberEnd: 775
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[net.sf.cglib.core.EmitUtils$10].<init>(java.util.Map)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.EmitUtils$11].<init>()"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.awt.RenderingHints].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.IdentityHashMap].size()"
    - "[java.awt.RenderingHints].size()"
    - "[java.util.jar.Attributes].size()"
    - "[java.util.HashMap].size()"
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.util.Hashtable].size()"
    - "[java.util.TreeMap].size()"
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Properties].size()"
    - "[java.util.WeakHashMap].size()"
    - "[java.util.AbstractMap].size()"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.HashSet].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.EmitUtils$12].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.EmitUtils].member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processDefault()"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processDefault()"
    - "[net.sf.cglib.proxy.Enhancer$5].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$16].processDefault()"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processDefault()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processDefault()"
    - "[net.sf.cglib.core.EmitUtils$12].processDefault()"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processDefault()"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.util.Map].keySet()"
    - "[java.util.Map].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    functionUses: 2
    ICount: 39
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:744"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:761"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
        - "swap()"
        - "keySet()"
        - "string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
        - "<init>()"
        - "toArray(java.lang.Object[])"
        - "bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
        - "size()"
      - BranchSide: "net.sf.cglib.core.EmitUtils:760"
        BranchSideFuncs:
        - "member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:732,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.core.EmitUtils:733,1"
      Dst: "[net.sf.cglib.core.EmitUtils$10].<init>(java.util.Map)"
    - Src: "net.sf.cglib.core.EmitUtils:742,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils:745,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.EmitUtils:746,1"
      Dst: "[net.sf.cglib.core.EmitUtils$11].<init>()"
    - Src: "net.sf.cglib.core.EmitUtils:746,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:751,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.core.EmitUtils:751,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.core.EmitUtils:751,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:752,1"
      Dst: "[net.sf.cglib.core.EmitUtils$12].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:752,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.core.EmitUtils:761,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_helper_size(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:763,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:764,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils:765,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processDefault()"
    - Src: "net.sf.cglib.core.EmitUtils:772,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    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: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].constructor_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 723
    functionLinenumberEnd: 726
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].member_switch_helper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:724,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_switch_helper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,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: "[net.sf.cglib.reflect.FastClassEmitter].invokeSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 195
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - "[net.sf.cglib.reflect.FastClassEmitter$4].<init>(java.util.List,net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter].getIntRange(int)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[net.sf.cglib.core.Block].end()"
    - "[net.sf.cglib.core.EmitUtils].wrap_throwable(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 20
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter:166,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:166,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:167,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:168,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:169,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:169,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter].getIntRange(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:169,1"
      Dst: "[net.sf.cglib.reflect.FastClassEmitter$4].<init>(java.util.List,net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:169,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:190,1"
      Dst: "[net.sf.cglib.core.Block].end()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:191,1"
      Dst: "[net.sf.cglib.core.EmitUtils].wrap_throwable(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:192,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter:193,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.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: "[net.sf.cglib.reflect.FastClassEmitter].getIntRange(int)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 225
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.FastClassEmitter:221"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter:223"
        BranchSideFuncs: []
    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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$4].<init>(java.util.List,net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$4"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.util.List"
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:169,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: "[net.sf.cglib.core.EmitUtils].wrap_throwable(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 865
    functionLinenumberEnd: 874
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.Block"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Block].getCodeEmitter()"
    - "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].athrow()"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:866,1"
      Dst: "[net.sf.cglib.core.Block].getCodeEmitter()"
    - Src: "net.sf.cglib.core.EmitUtils:867,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:868,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:869,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - Src: "net.sf.cglib.core.EmitUtils:870,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.EmitUtils:871,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:872,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].athrow()"
    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: "[net.sf.cglib.reflect.FastClass$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClass$Generator:81,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],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: "[net.sf.cglib.reflect.FastClass$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.FastClass$Generator"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.ParallelSorter$LongComparer].<init>(long[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$LongComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$LongComparer:213,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: "[net.sf.cglib.util.ParallelSorter$LongComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$LongComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorter$LongComparer:217"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$LongComparer:214"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.util.ParallelSorter$LongComparer:217"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$LongComparer:214"
        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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassNameReader$1].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.ClassEmitter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassVisitorTee].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DebuggingClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionUses: 6
    ICount: 12
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:36,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitEnd()"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitEnd()"
    - "[net.sf.cglib.core.ClassEmitter].visitEnd()"
    - "[org.objectweb.asm.ClassVisitor].visitEnd()"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitEnd()"
    - "[org.objectweb.asm.ClassWriter].visitEnd()"
    functionUses: 6
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:41,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassVisitorTee].visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[org.objectweb.asm.ClassWriter].visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[org.objectweb.asm.ClassVisitor].visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)"
    functionUses: 5
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:47,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitInnerClass(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "org.objectweb.asm.FieldVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.ClassVisitor].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - "[net.sf.cglib.transform.FieldVisitorTee].<init>(org.objectweb.asm.FieldVisitor,org.objectweb.asm.FieldVisitor)"
    functionUses: 6
    ICount: 17
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.ClassVisitorTee:58"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:60"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:59"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.ClassVisitorTee:60"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:62"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:61"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.FieldVisitor,org.objectweb.asm.FieldVisitor)"
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:56,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    - Src: "net.sf.cglib.transform.ClassVisitorTee:62,1"
      Dst: "[net.sf.cglib.transform.FieldVisitorTee].<init>(org.objectweb.asm.FieldVisitor,org.objectweb.asm.FieldVisitor)"
    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: "[net.sf.cglib.transform.ClassVisitorTee].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 78
    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:
    - "[net.sf.cglib.transform.ClassVisitorTee].visitMethod(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[])"
    - "[net.sf.cglib.core.ClassEmitter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassTransformerChain].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodVisitorTee].<init>(org.objectweb.asm.MethodVisitor,org.objectweb.asm.MethodVisitor)"
    functionUses: 8
    ICount: 17
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.ClassVisitorTee:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:75"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:74"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.ClassVisitorTee:75"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:77"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassVisitorTee:76"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.MethodVisitor,org.objectweb.asm.MethodVisitor)"
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:71,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "net.sf.cglib.transform.ClassVisitorTee:77,1"
      Dst: "[net.sf.cglib.transform.MethodVisitorTee].<init>(org.objectweb.asm.MethodVisitor,org.objectweb.asm.MethodVisitor)"
    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: "[net.sf.cglib.transform.MethodVisitorTee].<init>(org.objectweb.asm.MethodVisitor,org.objectweb.asm.MethodVisitor)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.MethodVisitor"
    - "org.objectweb.asm.MethodVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:26,1"
      Dst: "[org.objectweb.asm.MethodVisitor].<init>(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: "[net.sf.cglib.transform.ClassVisitorTee].visitSource(java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitSource(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassVisitor].visitSource(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassWriter].visitSource(java.lang.String,java.lang.String)"
    functionUses: 6
    ICount: 8
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:81,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitSource(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitOuterClass(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassWriter].visitOuterClass(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitOuterClass(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitOuterClass(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.ClassVisitor].visitOuterClass(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 5
    ICount: 9
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:86,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitOuterClass(java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitAnnotation(java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitAnnotation(java.lang.String,boolean)"
    - "[org.objectweb.asm.ClassVisitor].visitAnnotation(java.lang.String,boolean)"
    - "[org.objectweb.asm.ClassWriter].visitAnnotation(java.lang.String,boolean)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitAnnotation(java.lang.String,boolean)"
    functionUses: 6
    ICount: 9
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:91,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitAnnotation(java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.ClassVisitorTee:91,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.ClassVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.ClassWriter].visitAttribute(org.objectweb.asm.Attribute)"
    functionUses: 5
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:96,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.ClassVisitorTee"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.ClassVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.ClassWriter].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassVisitorTee:101,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.ClassVisitorTee:101,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.AbstractClassLoader$1].<init>()"
    functionSourceFile: "net.sf.cglib.transform.AbstractClassLoader$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AbstractClassLoader$1: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: "[net.sf.cglib.transform.AbstractClassLoader$1].run()"
    functionSourceFile: "net.sf.cglib.transform.AbstractClassLoader$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getProtectionDomain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AbstractClassLoader$1:38,1"
      Dst: "[java.lang.Class].getProtectionDomain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].<init>(net.sf.cglib.proxy.MethodInterceptorGenerator,net.sf.cglib.core.CodeEmitter,java.util.Map)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator$2"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.proxy.MethodInterceptorGenerator"
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:222,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: "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator$2"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 11
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:224,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:224,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:225,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processDefault()"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator$2"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:228,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$2:229,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils$ArrayDelimiters].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$ArrayDelimiters"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 702
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$ArrayDelimiters:697,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: "[net.sf.cglib.core.internal.LoadingCache$2].call()"
    functionSourceFile: "net.sf.cglib.core.internal.LoadingCache$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.Function].apply(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.LoadingCache$2:54,1"
      Dst: "[net.sf.cglib.core.internal.Function].apply(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitFrame(int,int,java.lang.Object[],int,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object[]"
    - "int"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitFrame(int,int,java.lang.Object[],int,java.lang.Object[])"
    - "[org.objectweb.asm.MethodVisitor].visitFrame(int,int,java.lang.Object[],int,java.lang.Object[])"
    - "[org.objectweb.asm.MethodWriter].visitFrame(int,int,java.lang.Object[],int,java.lang.Object[])"
    functionUses: 7
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:32,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFrame(int,int,java.lang.Object[],int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitAnnotationDefault()"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitAnnotationDefault()"
    - "[org.objectweb.asm.MethodVisitor].visitAnnotationDefault()"
    - "[org.objectweb.asm.MethodWriter].visitAnnotationDefault()"
    functionUses: 4
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:37,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitAnnotationDefault()"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:37,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitAnnotation(java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.MethodVisitor].visitAnnotation(java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitAnnotation(java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitAnnotation(java.lang.String,boolean)"
    functionUses: 5
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:42,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitAnnotation(java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:42,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitParameterAnnotation(int,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitParameterAnnotation(int,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitParameterAnnotation(int,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitParameterAnnotation(int,java.lang.String,boolean)"
    functionUses: 4
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:49,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitParameterAnnotation(int,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:49,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.MethodWriter].visitAttribute(org.objectweb.asm.Attribute)"
    - "[org.objectweb.asm.MethodVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    functionUses: 5
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:54,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitAttribute(org.objectweb.asm.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitCode()"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitCode()"
    - "[org.objectweb.asm.MethodVisitor].visitCode()"
    - "[org.objectweb.asm.MethodWriter].visitCode()"
    functionUses: 4
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:59,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitInsn(int)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsn(int)"
    - "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionUses: 45
    ICount: 7
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:64,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: "[net.sf.cglib.transform.MethodVisitorTee].visitIntInsn(int,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitIntInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIntInsn(int,int)"
    functionUses: 8
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:69,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIntInsn(int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitVarInsn(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitVarInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitVarInsn(int,int)"
    functionUses: 11
    ICount: 8
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:74,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitVarInsn(int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitTypeInsn(int,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTypeInsn(int,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,java.lang.String)"
    functionUses: 5
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:79,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeInsn(int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 5
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:84,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 3
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:89,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].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].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionUses: 6
    ICount: 11
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:94,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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodWriter].visitJumpInsn(int,org.objectweb.asm.Label)"
    functionUses: 16
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:99,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitJumpInsn(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitLabel(org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLabel(org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLabel(org.objectweb.asm.Label)"
    functionUses: 7
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:104,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLabel(org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLdcInsn(java.lang.Object)"
    - "[org.objectweb.asm.MethodVisitor].visitLdcInsn(java.lang.Object)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLdcInsn(java.lang.Object)"
    functionUses: 11
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:109,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLdcInsn(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: "[net.sf.cglib.transform.MethodVisitorTee].visitIincInsn(int,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitIincInsn(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitIincInsn(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitIincInsn(int,int)"
    - "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:114,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitIincInsn(int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodVisitor].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    functionUses: 5
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:119,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTableSwitchInsn(int,int,org.objectweb.asm.Label,org.objectweb.asm.Label[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.Label"
    - "int[]"
    - "org.objectweb.asm.Label[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    - "[org.objectweb.asm.MethodVisitor].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    functionUses: 5
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:124,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLookupSwitchInsn(org.objectweb.asm.Label,int[],org.objectweb.asm.Label[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitMultiANewArrayInsn(java.lang.String,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitMultiANewArrayInsn(java.lang.String,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMultiANewArrayInsn(java.lang.String,int)"
    - "[org.objectweb.asm.MethodWriter].visitMultiANewArrayInsn(java.lang.String,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:129,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMultiANewArrayInsn(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: "[net.sf.cglib.transform.MethodVisitorTee].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    - "[org.objectweb.asm.MethodWriter].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,java.lang.String)"
    functionUses: 5
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:134,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTryCatchBlock(org.objectweb.asm.Label,org.objectweb.asm.Label,org.objectweb.asm.Label,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: "[net.sf.cglib.transform.MethodVisitorTee].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 142
    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:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[org.objectweb.asm.MethodVisitor].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[org.objectweb.asm.MethodWriter].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:139,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLocalVariable(java.lang.String,java.lang.String,java.lang.String,org.objectweb.asm.Label,org.objectweb.asm.Label,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: "[net.sf.cglib.transform.MethodVisitorTee].visitLineNumber(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodWriter].visitLineNumber(int,org.objectweb.asm.Label)"
    - "[org.objectweb.asm.MethodVisitor].visitLineNumber(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLineNumber(int,org.objectweb.asm.Label)"
    functionUses: 5
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:144,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLineNumber(int,org.objectweb.asm.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitMaxs(int,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitMaxs(int,int)"
    - "[net.sf.cglib.core.LocalVariablesSorter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitMaxs(int,int)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    - "[org.objectweb.asm.MethodWriter].visitMaxs(int,int)"
    - "[net.sf.cglib.core.ClassEmitter$2].visitMaxs(int,int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:149,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMaxs(int,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: "[net.sf.cglib.transform.MethodVisitorTee].visitEnd()"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitEnd()"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitEnd()"
    - "[org.objectweb.asm.MethodWriter].visitEnd()"
    functionUses: 4
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:154,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitParameter(java.lang.String,int)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitParameter(java.lang.String,int)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitParameter(java.lang.String,int)"
    - "[org.objectweb.asm.MethodWriter].visitParameter(java.lang.String,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:159,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitParameter(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: "[net.sf.cglib.transform.MethodVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.MethodWriter].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:164,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:164,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitInvokeDynamicInsn(java.lang.String,java.lang.String,org.objectweb.asm.Handle,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.objectweb.asm.Handle"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInvokeDynamicInsn(java.lang.String,java.lang.String,org.objectweb.asm.Handle,java.lang.Object[])"
    - "[org.objectweb.asm.MethodWriter].visitInvokeDynamicInsn(java.lang.String,java.lang.String,org.objectweb.asm.Handle,java.lang.Object[])"
    - "[org.objectweb.asm.MethodVisitor].visitInvokeDynamicInsn(java.lang.String,java.lang.String,org.objectweb.asm.Handle,java.lang.Object[])"
    functionUses: 4
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:169,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInvokeDynamicInsn(java.lang.String,java.lang.String,org.objectweb.asm.Handle,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: "[net.sf.cglib.transform.MethodVisitorTee].visitInsnAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.MethodVisitor].visitInsnAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitInsnAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitInsnAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:174,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsnAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:174,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitTryCatchAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 4
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.MethodVisitor].visitTryCatchAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodWriter].visitTryCatchAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitTryCatchAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    functionUses: 4
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:179,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitTryCatchAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:179,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.MethodVisitorTee].visitLocalVariableAnnotation(int,org.objectweb.asm.TypePath,org.objectweb.asm.Label[],org.objectweb.asm.Label[],int[],java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.MethodVisitorTee"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 7
    argTypes:
    - "int"
    - "org.objectweb.asm.TypePath"
    - "org.objectweb.asm.Label[]"
    - "org.objectweb.asm.Label[]"
    - "int[]"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.MethodWriter].visitLocalVariableAnnotation(int,org.objectweb.asm.TypePath,org.objectweb.asm.Label[],org.objectweb.asm.Label[],int[],java.lang.String,boolean)"
    - "[org.objectweb.asm.MethodVisitor].visitLocalVariableAnnotation(int,org.objectweb.asm.TypePath,org.objectweb.asm.Label[],org.objectweb.asm.Label[],int[],java.lang.String,boolean)"
    - "[net.sf.cglib.transform.MethodVisitorTee].visitLocalVariableAnnotation(int,org.objectweb.asm.TypePath,org.objectweb.asm.Label[],org.objectweb.asm.Label[],int[],java.lang.String,boolean)"
    functionUses: 5
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodVisitorTee:184,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitLocalVariableAnnotation(int,org.objectweb.asm.TypePath,org.objectweb.asm.Label[],org.objectweb.asm.Label[],int[],java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.MethodVisitorTee:184,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[ossfuzz.EnhancerFuzzer].<init>()"
    functionSourceFile: "ossfuzz.EnhancerFuzzer"
    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: "ossfuzz.EnhancerFuzzer:80,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: "[ossfuzz.EnhancerFuzzer].fixedValueCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "ossfuzz.EnhancerFuzzer"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 97
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[ossfuzz.FixedValueCallback].<init>(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeRemainingAsString()"
    - "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - "[net.sf.cglib.proxy.Enhancer].create()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[ossfuzz.FixedValueCallback].getString()"
    - "[ossfuzz.SampleClass].test()"
    - "[com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow].<init>(java.lang.String)"
    - "[ossfuzz.SampleClass].test(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    functionUses: 1
    ICount: 25
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "ossfuzz.EnhancerFuzzer:90"
      Branch Sides:
      - BranchSide: "ossfuzz.EnhancerFuzzer:93"
        BranchSideFuncs: []
      - BranchSide: "ossfuzz.EnhancerFuzzer:92"
        BranchSideFuncs:
        - "test(java.lang.String)"
        - "equals(java.lang.Object)"
        - "getString()"
    - Branch String: "ossfuzz.EnhancerFuzzer:93"
      Branch Sides:
      - BranchSide: "ossfuzz.EnhancerFuzzer:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "ossfuzz.EnhancerFuzzer:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "ossfuzz.EnhancerFuzzer:83,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "ossfuzz.EnhancerFuzzer:84,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "ossfuzz.EnhancerFuzzer:86,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - Src: "ossfuzz.EnhancerFuzzer:86,1"
      Dst: "[ossfuzz.FixedValueCallback].<init>(java.lang.String)"
    - Src: "ossfuzz.EnhancerFuzzer:87,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - Src: "ossfuzz.EnhancerFuzzer:89,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].create()"
    - Src: "ossfuzz.EnhancerFuzzer:90,1"
      Dst: "[ossfuzz.SampleClass].test()"
    - Src: "ossfuzz.EnhancerFuzzer:90,1"
      Dst: "[ossfuzz.FixedValueCallback].getString()"
    - Src: "ossfuzz.EnhancerFuzzer:90,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "ossfuzz.EnhancerFuzzer:91,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow].<init>(java.lang.String)"
    - Src: "ossfuzz.EnhancerFuzzer:93,1"
      Dst: "[ossfuzz.SampleClass].test(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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:173,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 195
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInterface()"
    - "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:186"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:188"
        BranchSideFuncs:
        - "setInterfaces(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:187"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:186"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:188"
        BranchSideFuncs:
        - "setInterfaces(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:187"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:188"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:191"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:188"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:186,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "net.sf.cglib.proxy.Enhancer:187,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:188,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: 8
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.Callback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setCallbacks(net.sf.cglib.proxy.Callback[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:226,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbacks(net.sf.cglib.proxy.Callback[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setCallbacks(net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:239"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:242"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:241"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:239"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:242"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:240,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.Enhancer].create()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 306
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].createHelper()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:305,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].createHelper()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].createHelper()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 470
    functionLinenumberEnd: 482
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].preValidate()"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - "[net.sf.cglib.core.WeakCacheKey].<init>(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    - "[net.sf.cglib.proxy.Enhancer$EnhancerKey].newInstance(java.lang.String,java.lang.String[],net.sf.cglib.core.WeakCacheKey,org.objectweb.asm.Type[],boolean,boolean,java.lang.Long)"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:472"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:473"
        BranchSideFuncs:
        - "getNames(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:472"
        BranchSideFuncs:
        - "getNames(java.lang.Class[])"
    - Branch String: "net.sf.cglib.proxy.Enhancer:474"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:473"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "getName()"
        - "getNames(java.lang.Class[])"
        - "create(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:472"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "getNames(java.lang.Class[])"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:471,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].preValidate()"
    - Src: "net.sf.cglib.proxy.Enhancer:472,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.Enhancer:473,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:474,1"
      Dst: "[net.sf.cglib.core.WeakCacheKey].<init>(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:472,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$EnhancerKey].newInstance(java.lang.String,java.lang.String[],net.sf.cglib.core.WeakCacheKey,org.objectweb.asm.Type[],boolean,boolean,java.lang.Long)"
    - Src: "net.sf.cglib.proxy.Enhancer:480,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: 7
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.proxy.Enhancer].preValidate()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 360
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[],boolean)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:349"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:353"
        BranchSideFuncs:
        - "determineTypes(net.sf.cglib.proxy.Callback[],boolean)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:352"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:353"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:359"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:358"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:354"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:357"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:350,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[],boolean)"
    - Src: "net.sf.cglib.proxy.Enhancer:355,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    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: 3
  - functionName: "[net.sf.cglib.core.WeakCacheKey].<init>(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.WeakCacheKey"
    linkageType: ""
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[net.sf.cglib.reflect.FastMember].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.io.File].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[net.sf.cglib.reflect.MethodDelegate].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[net.sf.cglib.beans.BeanMap].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[net.sf.cglib.proxy.CallbackHelper].hashCode()"
    - "[net.sf.cglib.core.Signature].hashCode()"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[net.sf.cglib.reflect.FastClass].hashCode()"
    - "[net.sf.cglib.core.MethodInfo].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[net.sf.cglib.core.DefaultNamingPolicy].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[net.sf.cglib.core.ClassInfo].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[java.awt.AWTKeyStroke:java.awt.AlphaComposite:java.awt.AttributeValue:java.awt.BasicStroke:java.awt.BufferCapabilities$FlipContents:java.awt.Color:java.awt.Dimension:java.awt.DisplayMode:java.awt.Font:java.awt.Insets:java.awt.JobAttributes:java.awt.JobAttributes$DefaultSelectionType:java.awt.JobAttributes$DestinationType:java.awt.JobAttributes$DialogType:java.awt.JobAttributes$MultipleDocumentHandlingType:java.awt.JobAttributes$SidesType:java.awt.MenuShortcut:java.awt.PageAttributes:java.awt.PageAttributes$ColorType:java.awt.PageAttributes$MediaType:java.awt.PageAttributes$OrientationRequestedType:java.awt.PageAttributes$OriginType:java.awt.PageAttributes$PrintQualityType:java.awt.RenderingHints:java.awt.RenderingHints$Key:java.awt.datatransfer.DataFlavor:java.awt.datatransfer.MimeType:java.awt.datatransfer.MimeTypeParameterList:java.awt.font.FontRenderContext:java.awt.font.NumericShaper:java.awt.font.TextHitInfo:java.awt.font.TransformAttribute:java.awt.geom.AffineTransform:java.awt.geom.Point2D:java.awt.geom.Rectangle2D:java.awt.image.ColorModel:java.awt.image.IndexColorModel:java.beans.IndexedPropertyDescriptor:java.beans.PropertyDescriptor:java.io.FilePermission:java.io.ObjectStreamClass$DeserializationConstructorsCache$Key:java.lang.Character$Subset:java.lang.Object:java.lang.Package:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.constant.DynamicConstantDesc: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.LambdaFormEditor$TransformKey:java.lang.invoke.MemberName:java.lang.invoke.MethodType: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.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.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.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date: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.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.zip.ZipEntry:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.security.auth.Subject:jdk.internal.misc.Signal:net.sf.cglib.core.WeakCacheKey:sun.font.AttributeValues:sun.font.CoreMetrics:sun.font.FontLineMetrics:sun.font.FontStrikeDesc:sun.java2d.loops.CompositeType:sun.java2d.loops.SurfaceType:sun.java2d.pipe.Region: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.LocaleExtensions].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 1
    ICount: 6
    EdgeCount: 36
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.WeakCacheKey:18,1"
      Dst: "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - Src: "net.sf.cglib.core.WeakCacheKey:19,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: "[ossfuzz.EnhancerFuzzer].methodInterceptorCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "ossfuzz.EnhancerFuzzer"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 116
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[ossfuzz.MethodInterceptorCallback].<init>(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeString(int)"
    - "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - "[net.sf.cglib.proxy.Enhancer].create()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[ossfuzz.MethodInterceptorCallback].getString()"
    - "[ossfuzz.SampleClass].test()"
    - "[com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow].<init>(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeRemainingAsString()"
    - "[ossfuzz.SampleClass].test(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    functionUses: 1
    ICount: 25
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "ossfuzz.EnhancerFuzzer:107"
      Branch Sides:
      - BranchSide: "ossfuzz.EnhancerFuzzer:111"
        BranchSideFuncs: []
      - BranchSide: "ossfuzz.EnhancerFuzzer:110"
        BranchSideFuncs:
        - "consumeRemainingAsString()"
        - "test(java.lang.String)"
        - "equals(java.lang.Object)"
    - Branch String: "ossfuzz.EnhancerFuzzer:112"
      Branch Sides:
      - BranchSide: "ossfuzz.EnhancerFuzzer:115"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "ossfuzz.EnhancerFuzzer:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "ossfuzz.EnhancerFuzzer:100,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "ossfuzz.EnhancerFuzzer:101,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "ossfuzz.EnhancerFuzzer:103,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    - Src: "ossfuzz.EnhancerFuzzer:103,1"
      Dst: "[ossfuzz.MethodInterceptorCallback].<init>(java.lang.String)"
    - Src: "ossfuzz.EnhancerFuzzer:104,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - Src: "ossfuzz.EnhancerFuzzer:106,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].create()"
    - Src: "ossfuzz.EnhancerFuzzer:107,1"
      Dst: "[ossfuzz.SampleClass].test()"
    - Src: "ossfuzz.EnhancerFuzzer:107,1"
      Dst: "[ossfuzz.MethodInterceptorCallback].getString()"
    - Src: "ossfuzz.EnhancerFuzzer:107,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "ossfuzz.EnhancerFuzzer:108,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow].<init>(java.lang.String)"
    - Src: "ossfuzz.EnhancerFuzzer:111,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - Src: "ossfuzz.EnhancerFuzzer:112,1"
      Dst: "[ossfuzz.SampleClass].test(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: 5
    CyclomaticComplexity: 1
  - functionName: "[ossfuzz.EnhancerFuzzer].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "ossfuzz.EnhancerFuzzer"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[ossfuzz.EnhancerFuzzer].fixedValueCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - "[ossfuzz.EnhancerFuzzer].methodInterceptorCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "ossfuzz.EnhancerFuzzer:118,1"
      Dst: "[ossfuzz.EnhancerFuzzer].fixedValueCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - Src: "ossfuzz.EnhancerFuzzer:119,1"
      Dst: "[ossfuzz.EnhancerFuzzer].methodInterceptorCallback(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    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: "[net.sf.cglib.proxy.LazyLoaderGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.LazyLoaderGenerator"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:23,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: "[net.sf.cglib.proxy.LazyLoaderGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.LazyLoaderGenerator"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 80
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.proxy.LazyLoaderGenerator].loadMethod(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.HashSet].iterator()"
    - "[java.lang.Integer].intValue()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[java.util.Set].iterator()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionUses: 1
    ICount: 60
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.LazyLoaderGenerator:33"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.LazyLoaderGenerator:52"
        BranchSideFuncs:
        - "isProtected(int)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.proxy.LazyLoaderGenerator:51"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "net.sf.cglib.proxy.LazyLoaderGenerator:35"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.LazyLoaderGenerator:37"
        BranchSideFuncs:
        - "getClassInfo()"
        - "invoke_virtual_this(net.sf.cglib.core.Signature)"
        - "checkcast(org.objectweb.asm.Type)"
        - "getType()"
        - "getIndex(net.sf.cglib.core.MethodInfo)"
        - "add(java.lang.Object)"
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "load_args()"
        - "valueOf(int)"
    - Branch String: "net.sf.cglib.proxy.LazyLoaderGenerator:52"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.LazyLoaderGenerator:79"
        BranchSideFuncs:
        - "end_method()"
        - "dup_x1()"
        - "next()"
        - "pop()"
        - "return_value()"
        - "intValue()"
        - "mark(org.objectweb.asm.Label)"
        - "loadMethod(int)"
        - "load_this()"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "make_label()"
        - "emitCallback(net.sf.cglib.core.CodeEmitter,int)"
        - "getfield(java.lang.String)"
        - "dup()"
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "ifnonnull(org.objectweb.asm.Label)"
        - "putfield(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.LazyLoaderGenerator:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:32,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:33,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:33,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:34,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:35,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:35,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:38,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:39,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:39,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:40,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:41,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:42,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:43,1"
      Dst: "[net.sf.cglib.proxy.LazyLoaderGenerator].loadMethod(int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:43,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:44,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:44,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:44,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:45,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:46,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:47,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:48,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:52,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:53,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:55,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:56,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:58,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:64,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:66,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:67,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:68,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:70,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:71,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:72,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:73,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:74,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(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: 10
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:55"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:54"
        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: "[net.sf.cglib.proxy.LazyLoaderGenerator].loadMethod(int)"
    functionSourceFile: "net.sf.cglib.proxy.LazyLoaderGenerator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 2
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:82,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.proxy.LazyLoaderGenerator:82,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.LazyLoaderGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.LazyLoaderGenerator"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    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: "[net.sf.cglib.core.AsmApi].value()"
    functionSourceFile: "net.sf.cglib.core.AsmApi"
    linkageType: ""
    functionLinenumber: 10
    functionLinenumberEnd: 12
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 1
    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: "[net.sf.cglib.core.AsmApi].<init>()"
    functionSourceFile: "net.sf.cglib.core.AsmApi"
    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: "net.sf.cglib.core.AsmApi:14,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: "[net.sf.cglib.reflect.FastClassEmitter$4].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$4"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 186
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].isConstructor(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 2
    ICount: 33
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.FastClassEmitter$4:173"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter$4:179"
        BranchSideFuncs:
        - "isConstructor(net.sf.cglib.core.MethodInfo)"
        - "invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.Type)"
    - Branch String: "net.sf.cglib.reflect.FastClassEmitter$4:181"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter$4:184"
        BranchSideFuncs:
        - "getSignature()"
        - "box(org.objectweb.asm.Type)"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.reflect.FastClassEmitter$4:183"
        BranchSideFuncs:
        - "return_value()"
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:171,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:172,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:172,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:174,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:175,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:176,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:180,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:181,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isConstructor(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:182,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:182,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:184,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.TypeUtils].isConstructor(net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:321,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.TypeUtils:321,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.core.TypeUtils:321,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$4].processDefault()"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$4"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$4:187,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: "[net.sf.cglib.proxy.MethodInterceptorGenerator$1].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$1: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: "[net.sf.cglib.proxy.MethodInterceptorGenerator$1].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator$1:70,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.AccessFieldTransformer].<init>(net.sf.cglib.transform.impl.AccessFieldTransformer$Callback)"
    functionSourceFile: "net.sf.cglib.transform.impl.AccessFieldTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.transform.impl.AccessFieldTransformer$Callback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:28,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<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: "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.impl.AccessFieldTransformer"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 64
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer$Callback].getPropertyName(org.objectweb.asm.Type,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 19
    ICount: 33
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AccessFieldTransformer:40"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AccessFieldTransformer:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:37,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:39,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:39,1"
      Dst: "[net.sf.cglib.transform.impl.AccessFieldTransformer$Callback].getPropertyName(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:39,1"
      Dst: "[net.sf.cglib.core.TypeUtils].upperFirst(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:42,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:42,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:42,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:47,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:48,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:49,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:50,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:58,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.transform.impl.AccessFieldTransformer:59,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.Enhancer].setCallbackFilter(net.sf.cglib.proxy.CallbackFilter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.CallbackFilter"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setUseFactory(boolean)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setInterceptDuringConstruction(boolean)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setCallbackType(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setCallbackTypes(java.lang.Class[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:277,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbackTypes(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: "[net.sf.cglib.proxy.Enhancer].setCallbackTypes(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.proxy.CallbackInfo].determineTypes(java.lang.Class[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:290"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:293"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:292"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:290"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:293"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:292"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:291,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:293,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(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: "[net.sf.cglib.proxy.Enhancer].create(java.lang.Class[],java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class[]"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.proxy.Enhancer].createHelper()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:319"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:320"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:319"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:319"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:320"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:319"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:319"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:322"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:320,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:324,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].createHelper()"
    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: "[net.sf.cglib.proxy.Enhancer].createClass()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].createHelper()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:337,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].createHelper()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setSerialVersionUID(java.lang.Long)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Long"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].validate()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 399
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[])"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.Class].isInterface()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 89
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:362"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:362"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:361"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:362"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:369"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:368"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:363"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:366"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:365"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:369"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:372"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:371"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:369"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:372"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:371"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:372"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:375"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:374"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:375"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:374"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:375"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:374"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:376"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:379"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:378"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:380"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:385"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:384"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:381"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:379"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:378"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:375"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:388"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:387"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:388"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:398"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:397"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:389"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:398"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:397"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:390"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:393"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:392"
        BranchSideFuncs:
        - "isInterface()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:393"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:389"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:364,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:379,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].determineTypes(net.sf.cglib.proxy.Callback[])"
    - Src: "net.sf.cglib.proxy.Enhancer:381,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:382,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(org.objectweb.asm.Type,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:393,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "net.sf.cglib.proxy.Enhancer:394,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: 33
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.proxy.Enhancer].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 485
    functionLinenumberEnd: 493
    functionDepth: 5
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].validate()"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].findPackageProtected(java.lang.Class[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    functionUses: 2
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:487"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:489"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:488"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:489"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:492"
        BranchSideFuncs:
        - "getName()"
        - "setNamePrefix(java.lang.String)"
        - "findPackageProtected(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:491"
        BranchSideFuncs:
        - "generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:486,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].validate()"
    - Src: "net.sf.cglib.proxy.Enhancer:488,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.Enhancer:488,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:490,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findPackageProtected(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:492,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    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: 3
  - functionName: "[net.sf.cglib.core.ReflectUtils].findPackageProtected(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 478
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:472"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:477"
        BranchSideFuncs:
        - "getModifiers()"
        - "isPublic(int)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:476"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:473"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:472"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:473,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "net.sf.cglib.core.ReflectUtils:473,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(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: "[net.sf.cglib.proxy.Enhancer].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 502
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:496"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:498"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:497"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:498"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:501"
        BranchSideFuncs:
        - "getClassLoader()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:500"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:497,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 505
    functionLinenumberEnd: 512
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:506"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:508"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:507"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:508"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:511"
        BranchSideFuncs:
        - "getProtectionDomain(java.lang.Class)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:510"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:507,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,java.util.Set)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:535,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,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: "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,java.util.Set)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 539
    functionLinenumberEnd: 560
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "java.util.List"
    - "java.util.List"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].addAll(java.util.Collection)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[net.sf.cglib.core.MethodWrapper].createSet(java.util.Collection)"
    - "[jaz.Zer].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[sun.awt.util.IdentityArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[net.sf.cglib.core.RejectModifierPredicate].<init>(int)"
    - "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - "[net.sf.cglib.core.DuplicatesPredicate].<init>(java.util.List)"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 39
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:541"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:540"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:539"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:542"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:549"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:548"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:543"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:549"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:548"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:544"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:543"
        BranchSideFuncs:
        - "addAllMethods(java.lang.Class,java.util.List)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:542"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:549"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:555"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:554"
        BranchSideFuncs:
        - "<init>(int)"
        - "<init>(java.lang.Class,boolean)"
        - "filter(java.util.Collection,net.sf.cglib.core.Predicate)"
        - "<init>(java.util.List)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:550"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:553"
        BranchSideFuncs:
        - "createSet(java.util.Collection)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:552"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:540,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllMethods(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:551,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].createSet(java.util.Collection)"
    - Src: "net.sf.cglib.proxy.Enhancer:551,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "net.sf.cglib.proxy.Enhancer:553,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.sf.cglib.proxy.Enhancer:555,1"
      Dst: "[net.sf.cglib.core.RejectModifierPredicate].<init>(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:555,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - Src: "net.sf.cglib.proxy.Enhancer:556,1"
      Dst: "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - Src: "net.sf.cglib.proxy.Enhancer:557,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate].<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: 14
    CyclomaticComplexity: 7
  - functionName: "[net.sf.cglib.core.MethodWrapper].createSet(java.util.Collection)"
    functionSourceFile: "net.sf.cglib.core.MethodWrapper"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.DelayQueue:java.util.concurrent.LinkedBlockingQueue].add(java.lang.Object)"
    - "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.MethodWrapper:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.MethodWrapper:44"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "create(java.lang.reflect.Method)"
        - "next()"
      - BranchSide: "net.sf.cglib.core.MethodWrapper:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.MethodWrapper:40,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.core.MethodWrapper:41,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.sf.cglib.core.MethodWrapper:41,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.MethodWrapper:42,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.MethodWrapper:42,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.MethodWrapper:42,1"
      Dst: "[java.util.Set].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: 2
  - functionName: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.core.MethodWrapper"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[net.sf.cglib.core.MethodWrapper$MethodWrapperKey].newInstance(java.lang.String,java.lang.String[],java.lang.String)"
    functionUses: 5
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.MethodWrapper:34,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.core.MethodWrapper:35,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.core.MethodWrapper:35,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - Src: "net.sf.cglib.core.MethodWrapper:36,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.core.MethodWrapper:36,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.core.MethodWrapper:34,1"
      Dst: "[net.sf.cglib.core.MethodWrapper$MethodWrapperKey].newInstance(java.lang.String,java.lang.String[],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: "[net.sf.cglib.core.RejectModifierPredicate].<init>(int)"
    functionSourceFile: "net.sf.cglib.core.RejectModifierPredicate"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.RejectModifierPredicate:23,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: "[net.sf.cglib.core.DuplicatesPredicate].<init>(java.util.List)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 102
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.HashMap:java.util.LinkedHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.reflect.Method].isBridge()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].<init>(java.util.Set)"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.PriorityQueue:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.DelayQueue:java.util.concurrent.LinkedBlockingQueue].next()"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].addSuspectMethod(java.lang.reflect.Method)"
    - "[java.util.HashSet].iterator()"
    - "[net.sf.cglib.core.DuplicatesPredicate].getClassLoader(java.lang.Class)"
    - "[java.lang.Class].getName()"
    - "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - "[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.util.jar.Manifest$FastInputStream:java.util.zip.InflaterInputStream:java.util.zip.ZipInputStream].close()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].iterator()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 75
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:59"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:73"
        BranchSideFuncs:
        - "create(java.lang.reflect.Method)"
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:72"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:63"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:65"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:64"
        BranchSideFuncs:
        - "containsKey(java.lang.Object)"
        - "isBridge()"
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:65"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:70"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:65"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:70"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:65"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:70"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:101"
        BranchSideFuncs:
        - "values()"
        - "<init>()"
        - "<init>(java.util.Set)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:100"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:76"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:81"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "values()"
        - "addSuspectMethod(java.lang.reflect.Method)"
        - "getDeclaringClass()"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:80"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:81"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:101"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getClassLoader(java.lang.Class)"
        - "iterator()"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:100"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:85"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:88"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:87"
        BranchSideFuncs:
        - "getResourceAsStream(java.lang.String)"
        - "getName()"
        - "replace(char,char)"
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:93"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:92"
        BranchSideFuncs:
        - "accept(org.objectweb.asm.ClassVisitor,int)"
        - "<init>(java.io.InputStream)"
        - "close()"
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:50,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:57,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:59,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:61,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:64,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:65,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:65,1"
      Dst: "[java.lang.reflect.Method].isBridge()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:73,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:75,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].<init>(java.util.Set)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:76,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:76,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:78,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:78,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:79,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].addSuspectMethod(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:81,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:84,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate].getClassLoader(java.lang.Class)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:88,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:88,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:88,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:88,1"
      Dst: "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:93,1"
      Dst: "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:93,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:95,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].<init>(java.util.Set)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[org.objectweb.asm.ClassVisitor].<init>(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:125,1"
      Dst: "[org.objectweb.asm.ClassVisitor].<init>(int)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:122,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: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].addSuspectMethod(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[java.awt.RenderingHints].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].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: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:130,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:130,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: "[net.sf.cglib.core.DuplicatesPredicate].getClassLoader(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getContextClassLoader()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:112"
        BranchSideFuncs:
        - "getClassLoader()"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:111"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:112"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:115"
        BranchSideFuncs:
        - "getContextClassLoader()"
        - "currentThread()"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate:108,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:113,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:113,1"
      Dst: "[java.lang.Thread].getContextClassLoader()"
    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: "[net.sf.cglib.proxy.Enhancer].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 561
    functionLinenumberEnd: 652
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isFinal(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[net.sf.cglib.proxy.Enhancer].filterConstructors(java.lang.Class,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,java.util.Set)"
    - "[net.sf.cglib.proxy.Enhancer$2].<init>(net.sf.cglib.proxy.Enhancer,java.util.Set)"
    - "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.proxy.Enhancer].emitMethods(net.sf.cglib.core.ClassEmitter,java.util.List,java.util.List)"
    - "[net.sf.cglib.proxy.Enhancer].emitConstructors(net.sf.cglib.core.ClassEmitter,java.util.List)"
    - "[net.sf.cglib.proxy.Enhancer].emitDefaultConstructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitSetThreadCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitSetStaticCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitBindCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackKeys()"
    - "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
    - "[net.sf.cglib.proxy.Enhancer].emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    - "[net.sf.cglib.proxy.Enhancer].emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    - "[net.sf.cglib.proxy.Enhancer].emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.proxy.Enhancer].emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 3
    ICount: 107
    EdgeCount: 81
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:562"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:561"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:564"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:566"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:565"
        BranchSideFuncs:
        - "getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,java.util.Set)"
        - "filterConstructors(java.lang.Class,java.util.List)"
        - "<init>()"
        - "asList(java.lang.Object[])"
        - "<init>(java.util.Collection)"
        - "getDeclaredConstructors()"
        - "<init>(org.objectweb.asm.ClassVisitor)"
        - "<init>(net.sf.cglib.proxy.Enhancer,java.util.Set)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:593"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:null"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:598"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:600"
        BranchSideFuncs:
        - "add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:599"
        BranchSideFuncs:
        - "getTypes(java.lang.Class[])"
    - Branch String: "net.sf.cglib.proxy.Enhancer:614"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:617"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:616"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:619"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:623"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:622"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:623"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:626"
        BranchSideFuncs:
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:629"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:633"
        BranchSideFuncs:
        - "emitConstructors(net.sf.cglib.core.ClassEmitter,java.util.List)"
        - "emitMethods(net.sf.cglib.core.ClassEmitter,java.util.List,java.util.List)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:632"
        BranchSideFuncs:
        - "emitDefaultConstructor(net.sf.cglib.core.ClassEmitter)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:639"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:640"
        BranchSideFuncs:
        - "emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
        - "emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
        - "emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
        - "emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "getCallbackKeys()"
        - "emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:639"
        BranchSideFuncs:
        - "emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
        - "emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
        - "emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
        - "emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "getCallbackKeys()"
        - "emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    - Branch String: "net.sf.cglib.proxy.Enhancer:639"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:650"
        BranchSideFuncs:
        - "emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
        - "emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
        - "emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
        - "emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
        - "getCallbackKeys()"
        - "emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:649"
        BranchSideFuncs:
        - "end_class()"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:564,1"
      Dst: "[java.lang.Class].getModifiers()"
    - Src: "net.sf.cglib.proxy.Enhancer:564,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isFinal(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:565,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.Enhancer:565,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:565,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:566,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "net.sf.cglib.proxy.Enhancer:566,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer:566,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.sf.cglib.proxy.Enhancer:567,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].filterConstructors(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:572,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:574,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:575,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getMethods(java.lang.Class,java.lang.Class[],java.util.List,java.util.List,java.util.Set)"
    - Src: "net.sf.cglib.proxy.Enhancer:577,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$2].<init>(net.sf.cglib.proxy.Enhancer,java.util.Set)"
    - Src: "net.sf.cglib.proxy.Enhancer:577,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].transform(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.proxy.Enhancer:592,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.proxy.Enhancer:596,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.proxy.Enhancer:597,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:599,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:599,1"
      Dst: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:594,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:610,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - Src: "net.sf.cglib.proxy.Enhancer:612,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:624,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:630,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitMethods(net.sf.cglib.core.ClassEmitter,java.util.List,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:631,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitConstructors(net.sf.cglib.core.ClassEmitter,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:633,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitDefaultConstructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:635,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitSetThreadCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:636,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitSetStaticCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:637,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitBindCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:640,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackKeys()"
    - Src: "net.sf.cglib.proxy.Enhancer:641,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:642,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:643,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:644,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    - Src: "net.sf.cglib.proxy.Enhancer:645,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    - Src: "net.sf.cglib.proxy.Enhancer:646,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:647,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:650,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_class()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.core.TypeUtils].isFinal(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:47"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:46"
        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: "[net.sf.cglib.proxy.Enhancer].filterConstructors(java.lang.Class,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 668
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.List].size()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 13
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:665"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:667"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:666"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:664,1"
      Dst: "[net.sf.cglib.core.VisibilityPredicate].<init>(java.lang.Class,boolean)"
    - Src: "net.sf.cglib.proxy.Enhancer:664,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - Src: "net.sf.cglib.proxy.Enhancer:665,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.proxy.Enhancer:666,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:666,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    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: "[net.sf.cglib.proxy.Enhancer$2].<init>(net.sf.cglib.proxy.Enhancer,java.util.Set)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$2"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.Enhancer"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$2:577,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: "[net.sf.cglib.proxy.Enhancer].emitMethods(net.sf.cglib.core.ClassEmitter,java.util.List,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1093
    functionLinenumberEnd: 1232
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.CallbackInfo].getGenerators(org.objectweb.asm.Type[])"
    - "[java.util.HashMap].<init>()"
    - "[net.sf.cglib.core.CollectionUtils].getIndexMap(java.util.List)"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.proxy.CallbackHelper].accept(java.lang.reflect.Method)"
    - "[net.sf.cglib.proxy.Proxy$1].accept(java.lang.reflect.Method)"
    - "[net.sf.cglib.proxy.Enhancer$1].accept(java.lang.reflect.Method)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[sun.awt.util.IdentityArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].isBridge(int)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.proxy.BridgeMethodResolver].<init>(java.util.Map,java.lang.ClassLoader)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassLoader()"
    - "[net.sf.cglib.proxy.BridgeMethodResolver].resolveAll()"
    - "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.proxy.Enhancer$6].<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[net.sf.cglib.proxy.DispatcherGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.LazyLoaderGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.FixedValueGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.InvocationHandlerGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.NoOpGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.NoOpGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.FixedValueGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.LazyLoaderGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.InvocationHandlerGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.DispatcherGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.proxy.CallbackFilter].accept(java.lang.reflect.Method)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.sf.cglib.proxy.CallbackGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - "[net.sf.cglib.proxy.CallbackGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionUses: 1
    ICount: 119
    EdgeCount: 101
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:1103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1093"
        BranchSideFuncs:
        - "getGenerators(org.objectweb.asm.Type[])"
        - "getIndexMap(java.util.List)"
        - "iterator()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1105"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1132"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1131"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "<init>()"
        - "<init>(java.util.Map,java.lang.ClassLoader)"
        - "getStaticHook()"
        - "resolveAll()"
        - "getClassLoader()"
        - "dup()"
        - "putfield(java.lang.String)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1107"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1106"
        BranchSideFuncs:
        - "next()"
        - "accept(java.lang.reflect.Method)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1105"
        BranchSideFuncs:
        - "next()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1112"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1111"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:1112"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1112"
        BranchSideFuncs:
        - "valueOf(int)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1111"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:1115"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:null"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1122"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1130"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1129"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:1124"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1128"
        BranchSideFuncs:
        - "getDeclaringClass()"
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1127"
        BranchSideFuncs:
        - "getSignature()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1212"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1229"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1228"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1214"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1132"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "add(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1131"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "<init>()"
        - "<init>(java.util.Map,java.lang.ClassLoader)"
        - "getStaticHook()"
        - "resolveAll()"
        - "getClassLoader()"
        - "dup()"
        - "putfield(java.lang.String)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1217"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1132"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
        - "hasNext()"
        - "contains(java.lang.Object)"
        - "next()"
        - "accept(java.lang.reflect.Method)"
        - "get(java.lang.Object)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "<init>(java.lang.Throwable)"
        - "<init>(int)"
        - "isBridge(int)"
        - "getSignature()"
        - "<init>()"
        - "<init>(java.util.Map,java.lang.ClassLoader)"
        - "getModifiers()"
        - "getDeclaringClass()"
        - "getStaticHook()"
        - "add(java.lang.Object)"
        - "resolveAll()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getClassLoader()"
        - "generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
        - "generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
        - "valueOf(int)"
        - "dup()"
        - "<init>(java.lang.String)"
        - "putfield(java.lang.String)"
        - "size()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1131"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "<init>()"
        - "<init>(java.util.Map,java.lang.ClassLoader)"
        - "getStaticHook()"
        - "resolveAll()"
        - "getClassLoader()"
        - "dup()"
        - "putfield(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1094,1"
      Dst: "[net.sf.cglib.proxy.CallbackInfo].getGenerators(org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1096,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:1099,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].getIndexMap(java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:1102,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.Enhancer:1105,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.Enhancer:1106,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.Enhancer:1108,1"
      Dst: "[net.sf.cglib.proxy.CallbackFilter].accept(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.proxy.Enhancer:1110,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1110,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1112,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "net.sf.cglib.proxy.Enhancer:1112,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.Enhancer:1112,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1112,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:1114,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:1116,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.proxy.Enhancer:1116,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:1122,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isBridge(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1123,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "net.sf.cglib.proxy.Enhancer:1125,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:1128,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer:1128,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:1132,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassLoader()"
    - Src: "net.sf.cglib.proxy.Enhancer:1132,1"
      Dst: "[net.sf.cglib.proxy.BridgeMethodResolver].<init>(java.util.Map,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.proxy.Enhancer:1132,1"
      Dst: "[net.sf.cglib.proxy.BridgeMethodResolver].resolveAll()"
    - Src: "net.sf.cglib.proxy.Enhancer:1135,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - Src: "net.sf.cglib.proxy.Enhancer:1136,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1138,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1139,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1142,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$6].<init>(net.sf.cglib.proxy.Enhancer,java.util.Map,java.util.Map,java.util.Map,java.util.Map)"
    - Src: "net.sf.cglib.proxy.Enhancer:1214,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:1219,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:1220,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    - Src: "net.sf.cglib.proxy.Enhancer:1224,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.proxy.Enhancer:1229,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1230,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 29
    CyclomaticComplexity: 9
  - functionName: "[net.sf.cglib.core.CollectionUtils].getIndexMap(java.util.List)"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CollectionUtils:70"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:73"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "next()"
        - "valueOf(int)"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CollectionUtils:68,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.core.CollectionUtils:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.CollectionUtils:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.CollectionUtils:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.CollectionUtils:71,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.CollectionUtils:71,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].isBridge(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:79"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:78"
        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: "[net.sf.cglib.proxy.BridgeMethodResolver].<init>(java.util.Map,java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:47,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: "[net.sf.cglib.proxy.BridgeMethodResolver].resolveAll()"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[net.sf.cglib.beans.BeanMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[java.lang.Class].getName()"
    - "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].<init>(java.util.Set,java.util.Map)"
    - "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - "[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.util.jar.Manifest$FastInputStream:java.util.zip.InflaterInputStream:java.util.zip.ZipInputStream].close()"
    - "[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()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 35
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver:58"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver:76"
        BranchSideFuncs:
        - "getResourceAsStream(java.lang.String)"
        - "getValue()"
        - "next()"
        - "getName()"
        - "replace(char,char)"
        - "getKey()"
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver:75"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver:64"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver:68"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver:67"
        BranchSideFuncs:
        - "<init>(java.util.Set,java.util.Map)"
        - "accept(org.objectweb.asm.ClassVisitor,int)"
        - "<init>(java.io.InputStream)"
        - "close()"
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:57,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:58,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:58,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:58,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:60,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:61,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:63,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:63,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:63,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:63,1"
      Dst: "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:68,1"
      Dst: "[org.objectweb.asm.ClassReader].<init>(java.io.InputStream)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:68,1"
      Dst: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].<init>(java.util.Set,java.util.Map)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:69,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver:72,1"
      Dst: "[java.io.InputStream].close()"
    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: 1
  - functionName: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].<init>(java.util.Set,java.util.Map)"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassVisitor].<init>(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:86,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: "[net.sf.cglib.proxy.Enhancer].emitConstructors(net.sf.cglib.core.ClassEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 905
    functionLinenumberEnd: 933
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 52
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:907"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:930"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:929"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:909"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:912"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:911"
        BranchSideFuncs:
        - "getSignature()"
        - "load_args()"
        - "getDescriptor()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "dup()"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:909"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:912"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:911"
        BranchSideFuncs:
        - "getSignature()"
        - "load_args()"
        - "getDescriptor()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "dup()"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:917"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:912"
        BranchSideFuncs:
        - "super_invoke_constructor(net.sf.cglib.core.Signature)"
        - "getDescriptor()"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:911"
        BranchSideFuncs:
        - "getSignature()"
        - "load_args()"
        - "getDescriptor()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "dup()"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:917"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:912"
        BranchSideFuncs:
        - "super_invoke_constructor(net.sf.cglib.core.Signature)"
        - "getDescriptor()"
        - "equals(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:911"
        BranchSideFuncs:
        - "getSignature()"
        - "load_args()"
        - "getDescriptor()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "dup()"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:919"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:927"
        BranchSideFuncs:
        - "invoke_static_this(net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:926"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:921"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:927"
        BranchSideFuncs:
        - "push(int)"
        - "load_this()"
        - "putfield(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:926"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    - Branch String: "net.sf.cglib.proxy.Enhancer:930"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:932"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:931"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:930"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:932"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:931"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:930"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:932"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:931"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:907,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.Enhancer:907,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.Enhancer:908,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.Enhancer:909,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer:909,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.proxy.Enhancer:909,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:912,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.proxy.Enhancer:913,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:914,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:915,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.Enhancer:918,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:920,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:923,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:924,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:927,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:928,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.proxy.Enhancer:931,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 18
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.proxy.Enhancer].emitDefaultConstructor(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 890
    functionLinenumberEnd: 904
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - "[net.sf.cglib.core.MethodInfoTransformer].transform(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 21
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:891,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:893,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.sf.cglib.proxy.Enhancer:895,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].getInstance()"
    - Src: "net.sf.cglib.proxy.Enhancer:895,1"
      Dst: "[net.sf.cglib.core.MethodInfoTransformer].transform(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:896,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.proxy.Enhancer:897,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:898,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:899,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer:900,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:901,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:902,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.core.MethodInfoTransformer].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.MethodInfoTransformer"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.MethodInfoTransformer:29"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.MethodInfoTransformer:31"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.MethodInfoTransformer:30"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.MethodInfoTransformer:31"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.MethodInfoTransformer:34"
        BranchSideFuncs:
        - "getMethodInfo(java.lang.reflect.Member)"
      - BranchSide: "net.sf.cglib.core.MethodInfoTransformer:33"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.MethodInfoTransformer:30,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.core.MethodInfoTransformer:34,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Object)"
    - Src: "net.sf.cglib.core.MethodInfoTransformer:34,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].emitSetThreadCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1233
    functionLinenumberEnd: 1243
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 12
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1234,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1237,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1238,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1239,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1240,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1241,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].emitSetStaticCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1244
    functionLinenumberEnd: 1253
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 9
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1245,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1248,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1249,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1250,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1251,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].emitBindCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1268
    functionLinenumberEnd: 1315
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast_this()"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 52
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:1302"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1311"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1310"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
        - "mark(org.objectweb.asm.Label)"
    - Branch String: "net.sf.cglib.proxy.Enhancer:1303"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:null"
        BranchSideFuncs:
        - "dup2()"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1269,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1272,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.proxy.Enhancer:1273,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1274,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:1275,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.proxy.Enhancer:1277,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.proxy.Enhancer:1278,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.proxy.Enhancer:1279,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1280,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer:1282,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1283,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1286,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1287,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1289,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnonnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer:1290,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.proxy.Enhancer:1296,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer:1298,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.Enhancer:1299,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1301,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.proxy.Enhancer:1304,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.proxy.Enhancer:1306,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1308,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1312,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1313,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].getCallbackKeys()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 934
    functionLinenumberEnd: 940
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:936"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:938"
        BranchSideFuncs: []
    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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1013
    functionLinenumberEnd: 1020
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.proxy.Enhancer].emitCommonNewInstance(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1014,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1015,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:1016,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1017,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1018,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitCommonNewInstance(net.sf.cglib.core.CodeEmitter)"
    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: "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1021
    functionLinenumberEnd: 1026
    functionDepth: 1
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    functionUses: 4
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:1022"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1025"
        BranchSideFuncs:
        - "getClassType()"
        - "getClassEmitter()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1024"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1023,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - Src: "net.sf.cglib.proxy.Enhancer:1023,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.proxy.Enhancer:1025,1"
      Dst: "[org.objectweb.asm.Type].getType(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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].emitCommonNewInstance(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1029
    functionLinenumberEnd: 1039
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 2
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1030,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:1031,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1032,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1033,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1034,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.proxy.Enhancer:1035,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1036,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1037,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceCallback(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1040
    functionLinenumberEnd: 1061
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    - "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - "[net.sf.cglib.proxy.Enhancer].emitCommonNewInstance(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 23
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1041,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1048,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1049,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1050,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1052,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1053,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    - Src: "net.sf.cglib.proxy.Enhancer:1054,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:1054,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1057,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1059,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].emitCommonNewInstance(net.sf.cglib.core.CodeEmitter)"
    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: 3
  - functionName: "[net.sf.cglib.proxy.Enhancer].emitNewInstanceMultiarg(net.sf.cglib.core.ClassEmitter,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 1062
    functionLinenumberEnd: 1092
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.proxy.Enhancer$5].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils].constructor_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 21
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:1063,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:1064,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getThisType(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:1065,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1066,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1067,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1068,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1070,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$5].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1070,1"
      Dst: "[net.sf.cglib.core.EmitUtils].constructor_switch(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.proxy.Enhancer:1087,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.proxy.Enhancer:1089,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1090,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer$5].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$5"
    linkageType: ""
    functionLinenumber: 1069
    functionLinenumberEnd: 1071
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.proxy.Enhancer"
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$5:1070,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: "[net.sf.cglib.proxy.Enhancer].emitGetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 942
    functionLinenumberEnd: 961
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.proxy.Enhancer$3].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 16
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:943,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:944,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:945,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:947,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:948,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$3].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:948,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.proxy.Enhancer:958,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:959,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer$3].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$3"
    linkageType: ""
    functionLinenumber: 947
    functionLinenumberEnd: 949
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.Enhancer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$3:948,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: "[net.sf.cglib.proxy.Enhancer].emitSetCallback(net.sf.cglib.core.ClassEmitter,int[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 962
    functionLinenumberEnd: 980
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.proxy.Enhancer$4].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 12
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:963,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:964,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:965,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$4].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.Enhancer:965,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].process_switch(int[],net.sf.cglib.core.ProcessSwitchCallback)"
    - Src: "net.sf.cglib.proxy.Enhancer:977,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:978,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer$4].<init>(net.sf.cglib.proxy.Enhancer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$4"
    linkageType: ""
    functionLinenumber: 964
    functionLinenumberEnd: 966
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.Enhancer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$4:965,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: "[net.sf.cglib.proxy.Enhancer].emitGetCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 995
    functionLinenumberEnd: 1012
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 28
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:1002"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:1008"
        BranchSideFuncs:
        - "return_value()"
        - "end_method()"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:996,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:997,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:998,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer:1000,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1001,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:1003,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.Enhancer:1006,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:1006,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:1007,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    - Src: "net.sf.cglib.proxy.Enhancer:1009,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:1010,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].emitSetCallbacks(net.sf.cglib.core.ClassEmitter)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 981
    functionLinenumberEnd: 994
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].dup2()"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    functionUses: 1
    ICount: 22
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:985"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:990"
        BranchSideFuncs:
        - "return_value()"
        - "end_method()"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:982,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.Enhancer:983,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer:984,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:986,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup2()"
    - Src: "net.sf.cglib.proxy.Enhancer:987,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:988,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer:989,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer:989,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:991,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.Enhancer:992,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: "[net.sf.cglib.proxy.Enhancer].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 679
    functionLinenumberEnd: 684
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].createUsingReflection(java.lang.Class)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:680"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:683"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:682"
        BranchSideFuncs:
        - "createUsingReflection(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:683,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].createUsingReflection(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.proxy.Enhancer].createUsingReflection(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 821
    functionLinenumberEnd: 838
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setThreadCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:825"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:830"
        BranchSideFuncs:
        - "newInstance(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:822,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setThreadCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    - Src: "net.sf.cglib.proxy.Enhancer:827,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer:831,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: 4
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setThreadCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setCallbacksHelper(java.lang.Class,net.sf.cglib.proxy.Callback[],java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:791,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbacksHelper(java.lang.Class,net.sf.cglib.proxy.Callback[],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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].setCallbacksHelper(java.lang.Class,net.sf.cglib.proxy.Callback[],java.lang.String)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 796
    functionLinenumberEnd: 807
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.Callback[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:797,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:798,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Enhancer:800,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:800,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:802,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    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: "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 808
    functionLinenumberEnd: 810
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:809,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.NoSuchMethodException"
      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: "[net.sf.cglib.proxy.Enhancer].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 687
    functionLinenumberEnd: 701
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].newInstance(java.lang.Class[],java.lang.Object[],net.sf.cglib.proxy.Callback[])"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:690"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:694"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:693"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Enhancer:696"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:700"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:699"
        BranchSideFuncs:
        - "newInstance(java.lang.Class[],java.lang.Object[],net.sf.cglib.proxy.Callback[])"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:700,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].newInstance(java.lang.Class[],java.lang.Object[],net.sf.cglib.proxy.Callback[])"
    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: "[net.sf.cglib.proxy.Enhancer].wrapCachedClass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 704
    functionLinenumberEnd: 725
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].<init>(java.lang.Class,java.lang.Class[],boolean)"
    - "[java.lang.Class].getField(java.lang.String)"
    - "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:706"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:709"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer:708"
        BranchSideFuncs:
        - "<init>(java.lang.Class,java.lang.Class[],boolean)"
        - "set(java.lang.Object,java.lang.Object)"
        - "setAccessible(boolean)"
        - "getDeclaredField(java.lang.String)"
        - "getField(java.lang.String)"
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:709,1"
      Dst: "[net.sf.cglib.proxy.Enhancer$EnhancerFactoryData].<init>(java.lang.Class,java.lang.Class[],boolean)"
    - Src: "net.sf.cglib.proxy.Enhancer:714,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:715,1"
      Dst: "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer:716,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer:717,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "net.sf.cglib.proxy.Enhancer:720,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.proxy.Enhancer:724,1"
      Dst: "[java.lang.ref.WeakReference].<init>(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: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].unwrapCachedValue(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 734
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.ref.CleanerImpl$WeakCleanableRef].get()"
    - "[java.lang.ref.Reference].get()"
    - "[net.sf.cglib.core.AbstractClassGenerator].unwrapCachedValue(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer:729"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer:733"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "net.sf.cglib.proxy.Enhancer:732"
        BranchSideFuncs:
        - "unwrapCachedValue(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:730,1"
      Dst: "[java.lang.ref.Reference].get()"
    - Src: "net.sf.cglib.proxy.Enhancer:733,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].unwrapCachedValue(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: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].registerCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setThreadCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:760,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setThreadCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    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: "[net.sf.cglib.proxy.Enhancer].registerStaticCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].setCallbacksHelper(java.lang.Class,net.sf.cglib.proxy.Callback[],java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:773,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbacksHelper(java.lang.Class,net.sf.cglib.proxy.Callback[],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: "[net.sf.cglib.proxy.Enhancer].isEnhanced(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:783,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbacksSetter(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: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer].create(java.lang.Class,net.sf.cglib.proxy.Callback)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.proxy.Callback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - "[net.sf.cglib.proxy.Enhancer].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:848,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:849,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:850,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - Src: "net.sf.cglib.proxy.Enhancer:851,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].create()"
    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: "[net.sf.cglib.proxy.Enhancer].create(java.lang.Class,java.lang.Class[],net.sf.cglib.proxy.Callback)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "net.sf.cglib.proxy.Callback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - "[net.sf.cglib.proxy.Enhancer].create()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:863,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:864,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:865,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:866,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallback(net.sf.cglib.proxy.Callback)"
    - Src: "net.sf.cglib.proxy.Enhancer:867,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].create()"
    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: "[net.sf.cglib.proxy.Enhancer].create(java.lang.Class,java.lang.Class[],net.sf.cglib.proxy.CallbackFilter,net.sf.cglib.proxy.Callback[])"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class[]"
    - "net.sf.cglib.proxy.CallbackFilter"
    - "net.sf.cglib.proxy.Callback[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - "[net.sf.cglib.proxy.Enhancer].setCallbackFilter(net.sf.cglib.proxy.CallbackFilter)"
    - "[net.sf.cglib.proxy.Enhancer].setCallbacks(net.sf.cglib.proxy.Callback[])"
    - "[net.sf.cglib.proxy.Enhancer].create()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer:880,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "net.sf.cglib.proxy.Enhancer:881,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Enhancer:882,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Enhancer:883,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbackFilter(net.sf.cglib.proxy.CallbackFilter)"
    - Src: "net.sf.cglib.proxy.Enhancer:884,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbacks(net.sf.cglib.proxy.Callback[])"
    - Src: "net.sf.cglib.proxy.Enhancer:885,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].create()"
    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: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    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: 6
    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: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 122
    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:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].<init>(net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder,int)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 8
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:98"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:121"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder,int)"
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:97,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:98,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder:100,1"
      Dst: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].<init>(net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].<init>(net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder,int)"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].<init>(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:100,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: "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "net.sf.cglib.core.ClassInfo"
    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: "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    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: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "net.sf.cglib.core.Signature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    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: "[net.sf.cglib.core.CodeEmitter$State].getExceptionTypes()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    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: "[net.sf.cglib.core.CodeEmitter$State].getAttribute()"
    functionSourceFile: "net.sf.cglib.core.CodeEmitter$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.core.AbstractClassGenerator$Source].<init>(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$Source"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$Source:135,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: "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].<init>(net.sf.cglib.transform.impl.AddDelegateTransformer,net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer$1"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.transform.impl.AddDelegateTransformer"
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:76,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].<init>(net.sf.cglib.core.CodeEmitter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 90
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    functionUses: 6
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:80"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:89"
        BranchSideFuncs:
        - "dup()"
        - "load_this()"
        - "putfield(java.lang.String)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:88"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:80"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:89"
        BranchSideFuncs:
        - "dup()"
        - "load_this()"
        - "putfield(java.lang.String)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:79,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:81,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:82,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:83,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:85,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer$1:86,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(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: 3
  - functionName: "[net.sf.cglib.core.ClassNameReader].<init>()"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader"
    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: "net.sf.cglib.core.ClassNameReader:25,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: "[net.sf.cglib.core.ClassNameReader].getClassName(org.objectweb.asm.ClassReader)"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassNameReader].getClassInfo(org.objectweb.asm.ClassReader)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassNameReader:33,1"
      Dst: "[net.sf.cglib.core.ClassNameReader].getClassInfo(org.objectweb.asm.ClassReader)"
    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: "[net.sf.cglib.core.ClassNameReader].getClassInfo(org.objectweb.asm.ClassReader)"
    functionSourceFile: "net.sf.cglib.core.ClassNameReader"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.sf.cglib.core.ClassNameReader$1].<init>(int,org.objectweb.asm.ClassVisitor,java.util.List)"
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassNameReader:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.core.ClassNameReader:40,1"
      Dst: "[net.sf.cglib.core.ClassNameReader$1].<init>(int,org.objectweb.asm.ClassVisitor,java.util.List)"
    - Src: "net.sf.cglib.core.ClassNameReader:40,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,int)"
    - Src: "net.sf.cglib.core.ClassNameReader:60,1"
      Dst: "[java.util.List].toArray(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: "[net.sf.cglib.proxy.FixedValueGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.FixedValueGenerator"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:22,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: "[net.sf.cglib.proxy.FixedValueGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.FixedValueGenerator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.FixedValueGenerator:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.FixedValueGenerator:39"
        BranchSideFuncs:
        - "return_value()"
        - "end_method()"
        - "next()"
        - "unbox_or_zero(org.objectweb.asm.Type)"
        - "beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "emitCallback(net.sf.cglib.core.CodeEmitter,int)"
        - "getIndex(net.sf.cglib.core.MethodInfo)"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.proxy.FixedValueGenerator:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:30,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:30,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:31,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:32,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:33,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:33,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:34,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:35,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getReturnType()"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:35,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:36,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.FixedValueGenerator:37,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.FixedValueGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.FixedValueGenerator"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    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: "[net.sf.cglib.transform.impl.AddStaticInitTransformer].<init>(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddStaticInitTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddStaticInitTransformer:31"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:34"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:33"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddStaticInitTransformer:35"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:38"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:37"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddStaticInitTransformer:36"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:38"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:37"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddStaticInitTransformer:37"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:40"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:29,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:30,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:31,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:31,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isStatic(int)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:32,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:32,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:34,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:34,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:36,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:37,1"
      Dst: "[net.sf.cglib.core.Signature].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: 7
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.transform.impl.AddStaticInitTransformer].init()"
    functionSourceFile: "net.sf.cglib.transform.impl.AddStaticInitTransformer"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - "[net.sf.cglib.core.EmitUtils].load_class_this(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddStaticInitTransformer:43"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:48"
        BranchSideFuncs:
        - "getStaticHook()"
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "load_class_this(net.sf.cglib.core.CodeEmitter)"
      - BranchSide: "net.sf.cglib.transform.impl.AddStaticInitTransformer:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:43,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getAccess()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:43,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:44,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getStaticHook()"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:45,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class_this(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.transform.impl.AddStaticInitTransformer:46,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    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: "[net.sf.cglib.core.EmitUtils].load_class_this(net.sf.cglib.core.CodeEmitter)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - "[net.sf.cglib.core.EmitUtils].load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:309,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getClassEmitter()"
    - Src: "net.sf.cglib.core.EmitUtils:309,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].getClassType()"
    - Src: "net.sf.cglib.core.EmitUtils:309,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class_helper(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.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: "[net.sf.cglib.reflect.FastClassEmitter$1].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$1"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.Signature].toString()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$1:116,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$1:116,1"
      Dst: "[net.sf.cglib.core.Signature].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: "[net.sf.cglib.core.Signature].hashCode()"
    functionSourceFile: "net.sf.cglib.core.Signature"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 12
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.Signature:71,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: "[net.sf.cglib.util.ParallelSorter$ByteComparer].<init>(byte[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ByteComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ByteComparer:249,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: "[net.sf.cglib.util.ParallelSorter$ByteComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ByteComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    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: "[net.sf.cglib.transform.AnnotationVisitorTee].visit(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].visit(java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.AnnotationWriter].visit(java.lang.String,java.lang.Object)"
    - "[org.objectweb.asm.AnnotationVisitor].visit(java.lang.String,java.lang.Object)"
    functionUses: 18
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:39,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].visit(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: "[net.sf.cglib.transform.AnnotationVisitorTee].visitEnum(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].visitEnum(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.AnnotationWriter].visitEnum(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.AnnotationVisitor].visitEnum(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:44,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].visitEnum(java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.AnnotationVisitorTee].visitAnnotation(java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.AnnotationVisitor].visitAnnotation(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.AnnotationVisitorTee].visitAnnotation(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.AnnotationWriter].visitAnnotation(java.lang.String,java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:49,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].visitAnnotation(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:49,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.AnnotationVisitorTee].visitArray(java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "org.objectweb.asm.AnnotationVisitor"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    - "[org.objectweb.asm.AnnotationVisitor].visitArray(java.lang.String)"
    - "[org.objectweb.asm.AnnotationWriter].visitArray(java.lang.String)"
    - "[net.sf.cglib.transform.AnnotationVisitorTee].visitArray(java.lang.String)"
    functionUses: 5
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:54,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].visitArray(java.lang.String)"
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:54,1"
      Dst: "[net.sf.cglib.transform.AnnotationVisitorTee].getInstance(org.objectweb.asm.AnnotationVisitor,org.objectweb.asm.AnnotationVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.AnnotationVisitorTee].visitEnd()"
    functionSourceFile: "net.sf.cglib.transform.AnnotationVisitorTee"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.AnnotationVisitor].visitEnd()"
    - "[net.sf.cglib.transform.AnnotationVisitorTee].visitEnd()"
    - "[org.objectweb.asm.AnnotationWriter].visitEnd()"
    functionUses: 5
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.AnnotationVisitorTee:58,1"
      Dst: "[org.objectweb.asm.AnnotationVisitor].visitEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 161
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].helper(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readMethodSig(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeMethodSig(java.lang.String,java.lang.String)"
    - "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptRead(org.objectweb.asm.Type,java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptWrite(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 5
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:147"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:159"
        BranchSideFuncs:
        - "readMethodSig(java.lang.String,java.lang.String)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:158"
        BranchSideFuncs:
        - "visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:153"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:159"
        BranchSideFuncs:
        - "helper(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "writeMethodSig(java.lang.String,java.lang.String)"
      - BranchSide: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:158"
        BranchSideFuncs:
        - "visitFieldInsn(int,java.lang.String,java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:144,1"
      Dst: "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:147,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptRead(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:148,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].readMethodSig(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:148,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].helper(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:153,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldFilter].acceptWrite(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:154,1"
      Dst: "[net.sf.cglib.transform.impl.InterceptFieldTransformer].writeMethodSig(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:159,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitFieldInsn(int,java.lang.String,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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:134,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:134,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[net.sf.cglib.transform.impl.InterceptFieldTransformer$1].helper(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.InterceptFieldTransformer$1:163,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastMethod].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.reflect.FastClass"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastMethod].helper(net.sf.cglib.reflect.FastClass,java.lang.reflect.Method)"
    - "[net.sf.cglib.reflect.FastMember].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Member,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:28,1"
      Dst: "[net.sf.cglib.reflect.FastMethod].helper(net.sf.cglib.reflect.FastClass,java.lang.reflect.Method)"
    - Src: "net.sf.cglib.reflect.FastMethod:28,1"
      Dst: "[net.sf.cglib.reflect.FastMember].<init>(net.sf.cglib.reflect.FastClass,java.lang.reflect.Member,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: "[net.sf.cglib.reflect.FastMethod].helper(net.sf.cglib.reflect.FastClass,java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "net.sf.cglib.reflect.FastClass"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.reflect.FastClass].getIndex(net.sf.cglib.core.Signature)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.String].hashCode()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.FastMethod:33"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastMethod:41"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.FastMethod:40"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.reflect.FastMethod:36"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.FastMethod:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:32,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.reflect.FastMethod:32,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.reflect.FastMethod:32,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.reflect.FastMethod:32,1"
      Dst: "[net.sf.cglib.reflect.FastClass].getIndex(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.FastMethod:34,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.reflect.FastMethod:35,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "net.sf.cglib.reflect.FastMethod:35,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "net.sf.cglib.reflect.FastMethod:35,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "net.sf.cglib.reflect.FastMethod:37,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.FastMethod:37,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,java.lang.String)"
    - Src: "net.sf.cglib.reflect.FastMethod:39,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.reflect.FastMethod:39,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.reflect.FastMethod].getReturnType()"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getReturnType()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:45,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: "[net.sf.cglib.reflect.FastMethod].getParameterTypes()"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getParameterTypes()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:49,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastMethod].getExceptionTypes()"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getExceptionTypes()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:53,1"
      Dst: "[java.lang.reflect.Method].getExceptionTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastMethod].invoke(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastMethod:57,1"
      Dst: "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.reflect.InvocationTargetException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastMethod].getJavaMethod()"
    functionSourceFile: "net.sf.cglib.reflect.FastMethod"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MethodProxy$CreateInfo].<init>(java.lang.Class,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy$CreateInfo"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.sf.cglib.core.AbstractClassGenerator].getCurrent()"
    - "[net.sf.cglib.core.AbstractClassGenerator].getNamingPolicy()"
    - "[net.sf.cglib.core.AbstractClassGenerator].getStrategy()"
    - "[net.sf.cglib.core.AbstractClassGenerator].getAttemptLoad()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodProxy$CreateInfo:106"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodProxy$CreateInfo:111"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.MethodProxy$CreateInfo:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy$CreateInfo:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.proxy.MethodProxy$CreateInfo:105,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getCurrent()"
    - Src: "net.sf.cglib.proxy.MethodProxy$CreateInfo:107,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getNamingPolicy()"
    - Src: "net.sf.cglib.proxy.MethodProxy$CreateInfo:108,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getStrategy()"
    - Src: "net.sf.cglib.proxy.MethodProxy$CreateInfo:109,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getAttemptLoad()"
    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: "[net.sf.cglib.util.ParallelSorter$ObjectComparer].<init>(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ObjectComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ObjectComparer:199,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: "[net.sf.cglib.util.ParallelSorter$ObjectComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ObjectComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Comparable].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ObjectComparer:201,1"
      Dst: "[java.lang.Comparable].compareTo(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: "[net.sf.cglib.core.internal.CustomizerRegistry].get(java.lang.Class<T>)"
    functionSourceFile: "net.sf.cglib.core.internal.CustomizerRegistry"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.util.List<T>"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.internal.CustomizerRegistry:32"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:35"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "net.sf.cglib.core.internal.CustomizerRegistry:34"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:31,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.internal.CustomizerRegistry:33,1"
      Dst: "[java.util.Collections].emptyList()"
    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: "[net.sf.cglib.util.ParallelSorter$ShortComparer].<init>(short[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ShortComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$ShortComparer:243,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: "[net.sf.cglib.util.ParallelSorter$ShortComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$ShortComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    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: "[net.sf.cglib.beans.ImmutableBean$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:60,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.beans.ImmutableBean$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:64,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.beans.ImmutableBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - "[net.sf.cglib.core.ReflectUtils].getPropertyMethods(java.beans.PropertyDescriptor[],boolean,boolean)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    functionUses: 3
    ICount: 49
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.ImmutableBean$Generator:99"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.ImmutableBean$Generator:108"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.ImmutableBean$Generator:109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.ImmutableBean$Generator:115"
        BranchSideFuncs:
        - "end_class()"
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:74,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:75,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:78,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:76,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:83,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:85,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:86,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:87,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:89,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:90,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:91,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:92,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:93,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:95,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:96,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getPropertyMethods(java.beans.PropertyDescriptor[],boolean,boolean)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:100,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:101,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:103,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:116,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 7
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.beans.ImmutableBean$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],java.lang.Object[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:120,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class,java.lang.Class[],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: "[net.sf.cglib.beans.ImmutableBean$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.ImmutableBean$Generator"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.ImmutableBean$Generator].firstInstance(java.lang.Class)"
    - "[java.lang.Object].getClass()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:125,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.beans.ImmutableBean$Generator:125,1"
      Dst: "[net.sf.cglib.beans.ImmutableBean$Generator].firstInstance(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: "[net.sf.cglib.transform.MethodFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.MethodFilterTransformer"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "org.objectweb.asm.MethodVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1].accept(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[])"
    - "[net.sf.cglib.core.ClassEmitter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassTransformerChain].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassVisitorTee].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodFilter].accept(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionUses: 8
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.MethodFilterTransformer:36"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.MethodFilterTransformer:35"
        BranchSideFuncs:
        - "accept(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
        - "visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    Callsites:
    - Src: "net.sf.cglib.transform.MethodFilterTransformer:36,1"
      Dst: "[net.sf.cglib.transform.MethodFilter].accept(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "net.sf.cglib.transform.MethodFilterTransformer:36,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.MethodFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.MethodFilterTransformer"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassTransformerTee].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformerChain].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.MethodFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    functionUses: 4
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.MethodFilterTransformer:40,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.FixedKeySet].<init>(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.beans.FixedKeySet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractSet].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.FixedKeySet:24,1"
      Dst: "[java.util.AbstractSet].<init>()"
    - Src: "net.sf.cglib.beans.FixedKeySet:26,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.beans.FixedKeySet:26,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.sf.cglib.beans.FixedKeySet:26,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.FixedKeySet].iterator()"
    functionSourceFile: "net.sf.cglib.beans.FixedKeySet"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.Set].iterator()"
    functionUses: 18
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.FixedKeySet:30,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.FixedKeySet].size()"
    functionSourceFile: "net.sf.cglib.beans.FixedKeySet"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    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: "[net.sf.cglib.proxy.MethodProxy$FastClassInfo].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy$FastClassInfo"
    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: "net.sf.cglib.proxy.MethodProxy$FastClassInfo: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: "[net.sf.cglib.core.KeyFactory$1].<init>()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$1"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$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: "[net.sf.cglib.core.KeyFactory$1].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$1"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.KeyFactory$1:95"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$1:98"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$1:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$1:95,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.KeyFactory$1:96,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.core.EmitUtils$2].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$2"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.sf.cglib.core.EmitUtils].stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$2:203,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.EmitUtils$2:203,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$2:204,1"
      Dst: "[net.sf.cglib.core.EmitUtils].stringSwitchHelper(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,org.objectweb.asm.Label,org.objectweb.asm.Label,int)"
    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: "[net.sf.cglib.core.EmitUtils$2].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$2"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$2:207,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: "[net.sf.cglib.core.WeakCacheKey].equals(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.WeakCacheKey"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.Reference].get()"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[net.sf.cglib.core.ClassInfo].equals(java.lang.Object)"
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.MethodDelegate].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[net.sf.cglib.proxy.CallbackHelper].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastClass].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[net.sf.cglib.core.WeakCacheKey].equals(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[net.sf.cglib.core.DefaultNamingPolicy].equals(java.lang.Object)"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[net.sf.cglib.reflect.FastMember].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].equals(java.lang.Object)"
    - "[java.awt.AWTKeyStroke:java.awt.AlphaComposite:java.awt.BasicStroke:java.awt.Color:java.awt.Dimension:java.awt.DisplayMode:java.awt.Font:java.awt.Insets:java.awt.JobAttributes:java.awt.MenuShortcut:java.awt.PageAttributes:java.awt.Point:java.awt.Rectangle:java.awt.RenderingHints:java.awt.RenderingHints$Key:java.awt.datatransfer.DataFlavor:java.awt.datatransfer.MimeType:java.awt.datatransfer.MimeTypeParameterList:java.awt.font.FontRenderContext:java.awt.font.NumericShaper:java.awt.font.TextHitInfo:java.awt.font.TransformAttribute:java.awt.geom.AffineTransform:java.awt.geom.Point2D:java.awt.geom.Rectangle2D:java.awt.image.ColorModel:java.awt.image.IndexColorModel:java.beans.IndexedPropertyDescriptor:java.beans.PropertyDescriptor:java.io.FilePermission:java.io.ObjectStreamClass$DeserializationConstructorsCache$Key: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.constant.DynamicConstantDesc: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.LambdaFormEditor$TransformKey:java.lang.invoke.MemberName:java.lang.invoke.MethodType: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.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.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date: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.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.security.auth.Subject:sun.font.AttributeValues:sun.font.CoreMetrics:sun.font.FontLineMetrics:sun.font.FontStrikeDesc:sun.java2d.loops.CompositeType:sun.java2d.loops.SurfaceType:sun.java2d.pipe.Region: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.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.WeakCacheKey:24"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:27"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:26"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "get()"
    - Branch String: "net.sf.cglib.core.WeakCacheKey:29"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.WeakCacheKey:29"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.WeakCacheKey:29"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.WeakCacheKey:27,1"
      Dst: "[java.lang.ref.Reference].get()"
    - Src: "net.sf.cglib.core.WeakCacheKey:29,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: 8
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.WeakCacheKey].hashCode()"
    functionSourceFile: "net.sf.cglib.core.WeakCacheKey"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    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: "[net.sf.cglib.core.WeakCacheKey].toString()"
    functionSourceFile: "net.sf.cglib.core.WeakCacheKey"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.Reference].get()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[org.objectweb.asm.Handle].toString()"
    - "[jaz.Zer].toString()"
    - "[org.objectweb.asm.Label].toString()"
    - "[org.objectweb.asm.Type].toString()"
    - "[org.objectweb.asm.signature.SignatureWriter].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[java.lang.Class].toString()"
    - "[net.sf.cglib.core.ClassInfo].toString()"
    - "[java.lang.Object].toString()"
    - "[org.objectweb.asm.ConstantDynamic].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Byte].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[net.sf.cglib.core.MethodInfo].toString()"
    - "[java.lang.Double].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[java.lang.Thread].toString()"
    - "[java.lang.Short].toString()"
    - "[net.sf.cglib.reflect.FastClass].toString()"
    - "[java.lang.Long].toString()"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.Integer].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.io.File].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[net.sf.cglib.reflect.FastMember].toString()"
    - "[net.sf.cglib.transform.ClassTransformerChain].toString()"
    - "[net.sf.cglib.beans.BeanMap].toString()"
    - "[net.sf.cglib.core.WeakCacheKey].toString()"
    - "[java.lang.Float].toString()"
    - "[java.lang.Character].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[java.lang.Throwable].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[org.objectweb.asm.TypePath].toString()"
    - "[java.awt.AWTEvent:java.awt.AWTKeyStroke:java.awt.AttributeValue:java.awt.BufferCapabilities$FlipContents:java.awt.CheckboxGroup:java.awt.Color:java.awt.Component:java.awt.Cursor:java.awt.Dimension:java.awt.DisplayMode:java.awt.Event:java.awt.Font:java.awt.FontMetrics:java.awt.Graphics:java.awt.Insets:java.awt.JobAttributes:java.awt.JobAttributes$DefaultSelectionType:java.awt.JobAttributes$DestinationType:java.awt.JobAttributes$DialogType:java.awt.JobAttributes$MultipleDocumentHandlingType:java.awt.JobAttributes$SidesType:java.awt.MenuComponent:java.awt.MenuShortcut:java.awt.PageAttributes:java.awt.PageAttributes$ColorType:java.awt.PageAttributes$MediaType:java.awt.PageAttributes$OrientationRequestedType:java.awt.PageAttributes$OriginType:java.awt.PageAttributes$PrintQualityType:java.awt.Point:java.awt.Rectangle:java.awt.RenderingHints:java.awt.ScrollPaneAdjustable:java.awt.datatransfer.DataFlavor:java.awt.datatransfer.MimeType:java.awt.datatransfer.MimeTypeParameterList:java.awt.font.NumericShaper:java.awt.font.TextHitInfo:java.awt.geom.AffineTransform:java.awt.geom.Point2D$Double:java.awt.geom.Point2D$Float:java.awt.geom.Rectangle2D$Double:java.awt.geom.Rectangle2D$Float:java.awt.image.BufferedImage:java.awt.image.ColorModel:java.awt.image.IndexColorModel:java.beans.FeatureDescriptor:java.beans.PropertyChangeEvent: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.Enum$EnumDesc: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.constant.DynamicConstantDesc: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.LambdaFormEditor$TransformKey: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.invoke.VarHandle: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.lang.reflect.RecordComponent: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.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.Annotation: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.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.EventObject: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.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.ForkJoinPool:java.util.concurrent.FutureTask:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.Semaphore:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicReference: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.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.accessibility.AccessibleBundle:javax.accessibility.AccessibleRelationSet:javax.accessibility.AccessibleStateSet:javax.crypto.Cipher:javax.crypto.CryptoPermission:javax.security.auth.Subject:javax.swing.TimerQueue:javax.swing.TransferHandler$DropLocation:javax.swing.event.EventListenerList:net.sf.cglib.core.Signature:sun.awt.AppContext:sun.font.AttributeValues:sun.font.EAttribute:sun.font.FontFamily:sun.font.FontStrikeDesc:sun.font.StrikeMetrics:sun.java2d.loops.CompositeType:sun.java2d.loops.FontInfo:sun.java2d.loops.GraphicsPrimitive:sun.java2d.loops.SurfaceType:sun.java2d.pipe.Region: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.LazyCodeSourcePermissionCollection:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.WeakCacheKey:40"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.WeakCacheKey:38"
        BranchSideFuncs:
        - "toString()"
        - "get()"
    Callsites:
    - Src: "net.sf.cglib.core.WeakCacheKey:39,1"
      Dst: "[java.lang.ref.Reference].get()"
    - Src: "net.sf.cglib.core.WeakCacheKey:40,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.core.WeakCacheKey:40,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.EmitUtils$7].processElement(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$7"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 425
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$7:423,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils$1].<init>()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$1"
    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: "net.sf.cglib.core.ReflectUtils$1: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: "[net.sf.cglib.core.ReflectUtils$1].run()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].setAccessible(boolean)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$1:54,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils$1:55,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils$1:61,1"
      Dst: "[java.lang.reflect.Method].setAccessible(boolean)"
    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: "[net.sf.cglib.proxy.MixinEverythingEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinEverythingEmitter"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],int[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:33,1"
      Dst: "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],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: "[net.sf.cglib.proxy.MixinEverythingEmitter].getInterfaces(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinEverythingEmitter"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionDepth: 2
    returnType: "java.lang.Class[]"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MixinEverythingEmitter:38"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEverythingEmitter:40"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
        - "size()"
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:39,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:41,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:41,1"
      Dst: "[java.util.List].toArray(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: "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 437
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSuperclass()"
    - "[jaz.Zer].addAll(java.util.Collection)"
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    - "[java.util.Vector].addAll(java.util.Collection)"
    - "[sun.awt.util.IdentityArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getInterfaces()"
    - "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 2
    ICount: 9
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:432"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:436"
        BranchSideFuncs:
        - "addAllInterfaces(java.lang.Class,java.util.List)"
        - "getInterfaces()"
        - "addAll(java.util.Collection)"
        - "asList(java.lang.Object[])"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:435"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:431,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.sf.cglib.core.ReflectUtils:433,1"
      Dst: "[java.lang.Class].getInterfaces()"
    - Src: "net.sf.cglib.core.ReflectUtils:433,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.ReflectUtils:433,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.sf.cglib.core.ReflectUtils:434,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.MixinEverythingEmitter].getMethods(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.MixinEverythingEmitter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.ArrayList:java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.Class].getMethods()"
    - "[net.sf.cglib.core.RejectModifierPredicate].<init>(int)"
    - "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:45,1"
      Dst: "[java.lang.Class].getMethods()"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:45,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:45,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:46,1"
      Dst: "[net.sf.cglib.core.RejectModifierPredicate].<init>(int)"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:46,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].filter(java.util.Collection,net.sf.cglib.core.Predicate)"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:47,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.proxy.MixinEverythingEmitter:47,1"
      Dst: "[java.util.List].toArray(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: "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1].visitMethodInsn(int,java.lang.String,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:102"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:117"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:117"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:117"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:113"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:116"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:106,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:113,1"
      Dst: "[net.sf.cglib.core.Signature].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder$1:114,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: 8
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.transform.ClassTransformerChain].<init>(net.sf.cglib.transform.ClassTransformer[])"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerChain"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.transform.ClassTransformer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassTransformer].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerChain:23,1"
      Dst: "[net.sf.cglib.transform.AbstractClassTransformer].<init>()"
    - Src: "net.sf.cglib.transform.ClassTransformerChain:24,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: "[net.sf.cglib.transform.ClassTransformerChain].setTarget(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerChain"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformerChain].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.MethodFilterTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformerTee].setTarget(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    functionUses: 4
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.ClassTransformerChain:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassTransformerChain:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerChain:28,1"
      Dst: "[net.sf.cglib.transform.AbstractClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.transform.ClassTransformerChain:31,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].setTarget(org.objectweb.asm.ClassVisitor)"
    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: "[net.sf.cglib.transform.ClassTransformerChain].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerChain"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "org.objectweb.asm.MethodVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassVisitorTee].visitMethod(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[])"
    - "[net.sf.cglib.core.ClassEmitter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.proxy.BridgeMethodResolver$BridgedFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.AbstractClassFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.MethodFilterTransformer].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    - "[net.sf.cglib.transform.ClassTransformerChain].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionUses: 8
    ICount: 9
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerChain:41,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visitMethod(int,java.lang.String,java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.ClassTransformerChain].toString()"
    functionSourceFile: "net.sf.cglib.transform.ClassTransformerChain"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.sf.cglib.transform.ClassTransformerChain].toString()"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 5
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.ClassTransformerChain:47"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassTransformerChain:53"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassTransformerChain:52"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "net.sf.cglib.transform.ClassTransformerChain:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassTransformerChain:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassTransformerChain:45,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.sf.cglib.transform.ClassTransformerChain:46,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.sf.cglib.transform.ClassTransformerChain:51,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.sf.cglib.transform.ClassTransformerChain:54,1"
      Dst: "[java.lang.StringBuffer].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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.util.ParallelSorter$FloatComparer].<init>(float[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$FloatComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.ParallelSorter$FloatComparer:223,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: "[net.sf.cglib.util.ParallelSorter$FloatComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$FloatComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.ParallelSorter$FloatComparer:227"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$FloatComparer:224"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.util.ParallelSorter$FloatComparer:227"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.ParallelSorter$FloatComparer:224"
        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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$3"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 185
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.beans.PropertyDescriptor].getPropertyType()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:181,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:182,1"
      Dst: "[java.beans.PropertyDescriptor].getPropertyType()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:182,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:182,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:183,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$3].processDefault()"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$3"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:186,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$3:187,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter$1].getType()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "org.objectweb.asm.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: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter$1].getSuperType()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$1"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter$1:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$1:72"
        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: "[net.sf.cglib.core.ClassEmitter$1].getInterfaces()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    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: "[net.sf.cglib.core.ClassEmitter$1].getModifiers()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "int"
    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: "[net.sf.cglib.core.EmitUtils$6].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$6"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 299
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$16].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$12].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.Enhancer$5].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 58
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils$6:274"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:279"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:278"
        BranchSideFuncs:
        - "iterator()"
    - Branch String: "net.sf.cglib.core.EmitUtils$6:274"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:279"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:278"
        BranchSideFuncs:
        - "iterator()"
    - Branch String: "net.sf.cglib.core.EmitUtils$6:275"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:277"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:276"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.sf.cglib.core.EmitUtils$6:279"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:298"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:297"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils$6:281"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:284"
        BranchSideFuncs:
        - "mark(org.objectweb.asm.Label)"
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:283"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils$6:284"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:287"
        BranchSideFuncs:
        - "dup()"
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:286"
        BranchSideFuncs:
        - "hasNext()"
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "push(java.lang.String)"
    - Branch String: "net.sf.cglib.core.EmitUtils$6:289"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:293"
        BranchSideFuncs:
        - "pop()"
        - "make_label()"
      - BranchSide: "net.sf.cglib.core.EmitUtils$6:292"
        BranchSideFuncs:
        - "if_jump(int,org.objectweb.asm.Label)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$6:272,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.EmitUtils$6:272,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$6:274,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.core.EmitUtils$6:276,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils$6:277,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.EmitUtils$6:277,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils$6:279,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.EmitUtils$6:279,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.EmitUtils$6:280,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.EmitUtils$6:282,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils$6:285,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils$6:287,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils$6:288,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils$6:290,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.core.EmitUtils$6:290,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    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: 16
    CyclomaticComplexity: 8
  - functionName: "[net.sf.cglib.core.EmitUtils$6].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$6"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$6:300,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:77,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].setBean(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanMap$Generator:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMap$Generator:91"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanMap$Generator:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:90,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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].setBeanClass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].setRequire(int)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:112,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.beans.BeanMap$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:116,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.beans.BeanMap$Generator].create()"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.beans.BeanMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.beans.BeanMap$Generator$BeanMapKey].newInstance(java.lang.Class,int)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanMap$Generator:124"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMap$Generator:126"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanMap$Generator:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:126,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:126,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:127,1"
      Dst: "[net.sf.cglib.beans.BeanMap$Generator$BeanMapKey].newInstance(java.lang.Class,int)"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:127,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.beans.BeanMap$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BeanMapEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,int)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:131,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:131,1"
      Dst: "[net.sf.cglib.beans.BeanMapEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMap$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[net.sf.cglib.beans.BeanMap].newInstance(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:135,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanMap$Generator:135,1"
      Dst: "[net.sf.cglib.beans.BeanMap].newInstance(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: "[net.sf.cglib.beans.BeanMap$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.BeanMap$Generator"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BeanMap].newInstance(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMap$Generator:139,1"
      Dst: "[net.sf.cglib.beans.BeanMap].newInstance(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: "[net.sf.cglib.core.RejectModifierPredicate].evaluate(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.RejectModifierPredicate"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.invoke.MemberName:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Member].getModifiers()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.RejectModifierPredicate:28"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.RejectModifierPredicate:27"
        BranchSideFuncs:
        - "getModifiers()"
    Callsites:
    - Src: "net.sf.cglib.core.RejectModifierPredicate:28,1"
      Dst: "[java.lang.reflect.Member].getModifiers()"
    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: "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1].visitMaxs(int,int)"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Block].end()"
    - "[net.sf.cglib.core.EmitUtils].wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,int)"
    functionUses: 8
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1:54,1"
      Dst: "[net.sf.cglib.core.Block].end()"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1:55,1"
      Dst: "[net.sf.cglib.core.EmitUtils].wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1:56,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].visitMaxs(int,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: "[net.sf.cglib.core.EmitUtils].wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 919
    functionLinenumberEnd: 950
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.Block"
    - "org.objectweb.asm.Type[]"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].athrow()"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 2
    ICount: 55
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:920"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:920"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "asList(java.lang.Object[])"
      - BranchSide: "net.sf.cglib.core.EmitUtils:919"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "asList(java.lang.Object[])"
    - Branch String: "net.sf.cglib.core.EmitUtils:922"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:925"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:924"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:925"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:925"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:924"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:926"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:930"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:929"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.EmitUtils:930"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:934"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:933"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:934"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:939"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:938"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:935"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:938"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:939"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:943"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:942"
        BranchSideFuncs:
        - "athrow()"
        - "swap()"
        - "dup_x1()"
        - "catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
        - "new_instance(org.objectweb.asm.Type)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:920,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:920,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.sf.cglib.core.EmitUtils:922,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:927,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].catch_exception(net.sf.cglib.core.Block,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:940,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].athrow()"
    - Src: "net.sf.cglib.core.EmitUtils:944,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:945,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup_x1()"
    - Src: "net.sf.cglib.core.EmitUtils:946,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.core.EmitUtils:947,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[net.sf.cglib.core.MethodInfoTransformer].<init>()"
    functionSourceFile: "net.sf.cglib.core.MethodInfoTransformer"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.MethodInfoTransformer:20,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: "[net.sf.cglib.proxy.NoOpGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.NoOpGenerator"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.NoOpGenerator:22,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: "[net.sf.cglib.proxy.NoOpGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.NoOpGenerator"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isBridge(int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getOriginalModifiers(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - "[net.sf.cglib.core.TypeUtils].isPublic(int)"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.proxy.Enhancer$6].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getOriginalModifiers(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    functionUses: 1
    ICount: 25
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.NoOpGenerator:28"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:40"
        BranchSideFuncs:
        - "next()"
        - "isBridge(int)"
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:39"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.NoOpGenerator:30"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:33"
        BranchSideFuncs:
        - "isProtected(int)"
        - "getOriginalModifiers(net.sf.cglib.core.MethodInfo)"
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:32"
        BranchSideFuncs:
        - "emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
        - "end_method()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "return_value()"
        - "load_this()"
    - Branch String: "net.sf.cglib.proxy.NoOpGenerator:31"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:39"
        BranchSideFuncs:
        - "isPublic(int)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:38"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.NoOpGenerator:32"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:39"
        BranchSideFuncs:
        - "emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
        - "end_method()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "return_value()"
        - "load_this()"
      - BranchSide: "net.sf.cglib.proxy.NoOpGenerator:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.NoOpGenerator:28,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:28,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:29,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:30,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:30,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isBridge(int)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:31,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getOriginalModifiers(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:31,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:32,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPublic(int)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:33,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:34,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:35,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:36,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.NoOpGenerator:37,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 8
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.TypeUtils].isPublic(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:59"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:58"
        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: "[net.sf.cglib.proxy.NoOpGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.NoOpGenerator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    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: "[net.sf.cglib.util.StringSwitcher$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:76,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator].setStrings(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator].setInts(int[])"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator].setFixedInput(boolean)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.util.StringSwitcher$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:107,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:107,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.util.StringSwitcher$Generator].create()"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.util.StringSwitcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.util.StringSwitcher$StringSwitcherKey].newInstance(java.lang.String[],int[],boolean)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:114,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:114,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:115,1"
      Dst: "[net.sf.cglib.util.StringSwitcher$StringSwitcherKey].newInstance(java.lang.String[],int[],boolean)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:116,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.util.StringSwitcher$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 145
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].<init>(net.sf.cglib.util.StringSwitcher$Generator,net.sf.cglib.core.CodeEmitter,java.util.List)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    functionUses: 3
    ICount: 25
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.sf.cglib.util.StringSwitcher$Generator:131"
      Branch Sides:
      - BranchSide: "net.sf.cglib.util.StringSwitcher$Generator:120"
        BranchSideFuncs:
        - "end_class()"
        - "<init>(net.sf.cglib.util.StringSwitcher$Generator,net.sf.cglib.core.CodeEmitter,java.util.List)"
        - "end_method()"
        - "string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
      - BranchSide: "net.sf.cglib.util.StringSwitcher$Generator:119"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.ClassVisitor)"
        - "null_constructor(net.sf.cglib.core.ClassEmitter)"
        - "getClassName()"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "asList(java.lang.Object[])"
        - "load_arg(int)"
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:120,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:123,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:121,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:127,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:128,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:129,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:130,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:132,1"
      Dst: "[net.sf.cglib.util.StringSwitcher$Generator$1].<init>(net.sf.cglib.util.StringSwitcher$Generator,net.sf.cglib.core.CodeEmitter,java.util.List)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:132,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:142,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:143,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_class()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.util.StringSwitcher$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.util.StringSwitcher$Generator:147,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: "[net.sf.cglib.util.StringSwitcher$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.util.StringSwitcher$Generator"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.KeyFactory$2].<init>()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$2"
    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: "net.sf.cglib.core.KeyFactory$2: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: "[net.sf.cglib.core.KeyFactory$2].customize(net.sf.cglib.core.CodeEmitter,int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$2"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 107
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.KeyFactory$2:103"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$2:106"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$2:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$2:103,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.KeyFactory$2:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.core.KeyFactory$2].getOutType(int,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$2"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.KeyFactory$2:109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$2:112"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.KeyFactory$2:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$2:109,1"
      Dst: "[org.objectweb.asm.Type].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: "[net.sf.cglib.proxy.Enhancer$3].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$3"
    linkageType: ""
    functionLinenumber: 949
    functionLinenumberEnd: 953
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$3:950,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$3:950,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer$3:951,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: "[net.sf.cglib.proxy.Enhancer$3].processDefault()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$3"
    linkageType: ""
    functionLinenumber: 953
    functionLinenumberEnd: 957
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$3:954,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.proxy.Enhancer$3:955,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].<init>()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    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: "net.sf.cglib.core.ReflectUtils: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: "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Member"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getExceptionTypes()"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].getExceptionTypes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:153"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:155"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:154"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:155"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:158"
        BranchSideFuncs:
        - "getExceptionTypes()"
        - "getTypes(java.lang.Class[])"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:157"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:154,1"
      Dst: "[java.lang.reflect.Method].getExceptionTypes()"
    - Src: "net.sf.cglib.core.ReflectUtils:154,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:156,1"
      Dst: "[java.lang.reflect.Constructor].getExceptionTypes()"
    - Src: "net.sf.cglib.core.ReflectUtils:158,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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].findConstructor(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.reflect.Constructor"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].findConstructor(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:176,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findConstructor(java.lang.String,java.lang.ClassLoader)"
    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: "[net.sf.cglib.core.ReflectUtils].findConstructor(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.reflect.Constructor"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    - "[net.sf.cglib.core.ReflectUtils].parseTypes(java.lang.String,java.lang.ClassLoader)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:181,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:182,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:182,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.sf.cglib.core.ReflectUtils:183,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.core.ReflectUtils:183,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].parseTypes(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.core.ReflectUtils:183,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:185,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:233,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader,java.lang.String[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      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: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].<init>(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].substring(int,int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.StringBuffer)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.StringBuffer,java.lang.String)"
    - "[java.lang.ClassNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:240"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:243"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:242"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:244"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:246"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:249"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:247"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:246"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:250"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:-1"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:254"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:258"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:259"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:265"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:264"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:261"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:264"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:263"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:266"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:240,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:243,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.ReflectUtils:243,1"
      Dst: "[java.lang.StringBuffer].<init>(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:245,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.sf.cglib.core.ReflectUtils:247,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:249,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.StringBuffer)"
    - Src: "net.sf.cglib.core.ReflectUtils:252,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:252,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.core.ReflectUtils:256,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:260,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:268,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.StringBuffer,java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:272,1"
      Dst: "[java.lang.ClassNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 25
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.ReflectUtils].parseTypes(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Class[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:216"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:219"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:218"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:222"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:225"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:224"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:226"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:210,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:211,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:212,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.core.ReflectUtils:219,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:219,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.sf.cglib.core.ReflectUtils:219,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:225,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.core.ReflectUtils:227,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:227,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.ReflectUtils].findMethod(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.reflect.Method"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].findMethod(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:192,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findMethod(java.lang.String,java.lang.ClassLoader)"
    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: "[net.sf.cglib.core.ReflectUtils].findMethod(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.reflect.Method"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].lastIndexOf(int,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    - "[net.sf.cglib.core.ReflectUtils].parseTypes(java.lang.String,java.lang.ClassLoader)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:197,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:198,1"
      Dst: "[java.lang.String].lastIndexOf(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:199,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.ReflectUtils:199,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.sf.cglib.core.ReflectUtils:201,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClass(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.core.ReflectUtils:201,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].parseTypes(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.sf.cglib.core.ReflectUtils:201,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.core.ReflectUtils:203,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils].getClasses(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:330"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:331,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ReflectUtils].defineClass(java.lang.String,byte[],java.lang.ClassLoader)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 451
    functionLinenumberEnd: 453
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].defineClass(java.lang.String,byte[],java.lang.ClassLoader,java.security.ProtectionDomain)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:452,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].defineClass(java.lang.String,byte[],java.lang.ClassLoader,java.security.ProtectionDomain)"
    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: "[net.sf.cglib.core.ReflectUtils].defineClass(java.lang.String,byte[],java.lang.ClassLoader,java.security.ProtectionDomain)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 456
    functionLinenumberEnd: 469
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "java.lang.ClassLoader"
    - "java.security.ProtectionDomain"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    functionUses: 2
    ICount: 42
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:457"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:457"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:456"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:457"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:464"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:463"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:458,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.ReflectUtils:459,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.core.ReflectUtils:464,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.core.ReflectUtils:467,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ReflectUtils].getClassInfo(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 512
    functionDepth: 1
    returnType: "net.sf.cglib.core.ClassInfo"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[java.lang.Class].getSuperclass()"
    - "[net.sf.cglib.core.ReflectUtils$6].<init>(org.objectweb.asm.Type,org.objectweb.asm.Type,java.lang.Class)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:510"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:509"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.Type,org.objectweb.asm.Type,java.lang.Class)"
      - BranchSide: "net.sf.cglib.core.ReflectUtils:508"
        BranchSideFuncs:
        - "getType(java.lang.Class)"
        - "getSuperclass()"
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:509,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.core.ReflectUtils:510,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.sf.cglib.core.ReflectUtils:511,1"
      Dst: "[net.sf.cglib.core.ReflectUtils$6].<init>(org.objectweb.asm.Type,org.objectweb.asm.Type,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ReflectUtils].findMethods(java.lang.String[],java.lang.reflect.Method[])"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Method[]"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "java.lang.reflect.Method[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.lang.reflect.Method].getName()"
    - "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils:531"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:534"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:536"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:542"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.ReflectUtils:541"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.ReflectUtils:538"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils:534"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils:530,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.core.ReflectUtils:533,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.core.ReflectUtils:533,1"
      Dst: "[org.objectweb.asm.Type].getMethodDescriptor(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.ReflectUtils:533,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils:533,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.core.ReflectUtils:537,1"
      Dst: "[java.util.Map].get(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: 8
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.TypeUtils].<init>()"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    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: "net.sf.cglib.core.TypeUtils:25,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: "[net.sf.cglib.core.TypeUtils].getType(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:43,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.TypeUtils:43,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:43,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[net.sf.cglib.core.TypeUtils].isPrivate(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:71"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:70"
        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: "[net.sf.cglib.core.TypeUtils].isSynthetic(int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:75"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:74"
        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: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "org.objectweb.asm.Type[]"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.Type[]"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:127,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,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: "[net.sf.cglib.core.TypeUtils].fromInternalNames(java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:138"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:141"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:140"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:142"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:143,1"
      Dst: "[net.sf.cglib.core.TypeUtils].fromInternalName(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: "[net.sf.cglib.core.TypeUtils].getStackSize(org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getSize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:150"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:151,1"
      Dst: "[org.objectweb.asm.Type].getSize()"
    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: "[net.sf.cglib.core.TypeUtils].parseSignature(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 181
    functionDepth: 3
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String,int,int)"
    - "[java.lang.StringBuffer].append(java.lang.Object)"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 69
    ICount: 25
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:175"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:178"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "next()"
      - BranchSide: "net.sf.cglib.core.TypeUtils:177"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "map(java.lang.String)"
        - "append(char)"
        - "<init>(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:168,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.TypeUtils:169,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:171,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:173,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.sf.cglib.core.TypeUtils:174,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.sf.cglib.core.TypeUtils:175,1"
      Dst: "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String,int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:175,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.core.TypeUtils:175,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.TypeUtils:176,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.TypeUtils:176,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "net.sf.cglib.core.TypeUtils:179,1"
      Dst: "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:179,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:180,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.sf.cglib.core.TypeUtils:180,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,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: "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String,int,int)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 223
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:215"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:218"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:212,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.sf.cglib.core.TypeUtils:214,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:218,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:218,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.sf.cglib.core.TypeUtils:218,1"
      Dst: "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:218,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: 5
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 243
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.String].indexOf(int)"
    - "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 5
    ICount: 34
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:226"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:229"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:228"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.TypeUtils:230"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:232"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:231"
        BranchSideFuncs:
        - "indexOf(int)"
    - Branch String: "net.sf.cglib.core.TypeUtils:232"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:235"
        BranchSideFuncs:
        - "map(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.TypeUtils:234"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.sf.cglib.core.TypeUtils:237"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:240"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:239"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
        - "toString()"
        - "replace(char,char)"
        - "length()"
        - "substring(int,int)"
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:226,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.TypeUtils:229,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.TypeUtils:232,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.sf.cglib.core.TypeUtils:233,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:233,1"
      Dst: "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:235,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.sf.cglib.core.TypeUtils:237,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "net.sf.cglib.core.TypeUtils:238,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.sf.cglib.core.TypeUtils:240,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.TypeUtils:240,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.sf.cglib.core.TypeUtils:240,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:241,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.TypeUtils:241,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:242,1"
      Dst: "[java.lang.StringBuffer].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: 10
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TypeUtils].parseType(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 2
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    functionUses: 63
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:184,1"
      Dst: "[net.sf.cglib.core.TypeUtils].map(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:184,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "org.objectweb.asm.Type[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String,int,int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:190"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:188,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.TypeUtils:188,1"
      Dst: "[net.sf.cglib.core.TypeUtils].parseTypes(java.lang.String,int,int)"
    - Src: "net.sf.cglib.core.TypeUtils:189,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.core.TypeUtils:191,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.TypeUtils:191,1"
      Dst: "[org.objectweb.asm.Type].getType(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: "[net.sf.cglib.core.TypeUtils].parseConstructor(java.lang.String)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 4
    returnType: "net.sf.cglib.core.Signature"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].parseSignature(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:208,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.TypeUtils:208,1"
      Dst: "[net.sf.cglib.core.TypeUtils].parseSignature(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: "[net.sf.cglib.core.TypeUtils].getUnboxedType(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.TypeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.Type"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TypeUtils:270"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:272"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:271"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:272"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:274"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:273"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:274"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:276"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:275"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:276"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:278"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:277"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:278"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:280"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:279"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:280"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:282"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:281"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:282"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:284"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:283"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.TypeUtils:284"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TypeUtils:287"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TypeUtils:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.TypeUtils:270,1"
      Dst: "[org.objectweb.asm.Type].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: 17
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils].<init>()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    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: "net.sf.cglib.core.EmitUtils:75,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: "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.Customizer)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "int"
    - "net.sf.cglib.core.Customizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:396,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - Src: "net.sf.cglib.core.EmitUtils:396,1"
      Dst: "[net.sf.cglib.core.EmitUtils].hash_code(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,int,net.sf.cglib.core.internal.CustomizerRegistry)"
    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: "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.Customizer)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Label"
    - "net.sf.cglib.core.Customizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:496,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - Src: "net.sf.cglib.core.EmitUtils:496,1"
      Dst: "[net.sf.cglib.core.EmitUtils].not_equals(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,org.objectweb.asm.Label,net.sf.cglib.core.internal.CustomizerRegistry)"
    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: "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.Customizer)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    - "net.sf.cglib.core.EmitUtils$ArrayDelimiters"
    - "net.sf.cglib.core.Customizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:603,1"
      Dst: "[net.sf.cglib.core.internal.CustomizerRegistry].singleton(net.sf.cglib.core.Customizer)"
    - Src: "net.sf.cglib.core.EmitUtils:603,1"
      Dst: "[net.sf.cglib.core.EmitUtils].append_string(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.EmitUtils$ArrayDelimiters,net.sf.cglib.core.internal.CustomizerRegistry)"
    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: "[net.sf.cglib.core.EmitUtils].load_method(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 704
    functionLinenumberEnd: 710
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.CodeEmitter$State].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 15
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:705,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.core.EmitUtils:705,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.core.EmitUtils:705,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:706,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.core.EmitUtils:706,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.core.EmitUtils:706,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:707,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.core.EmitUtils:707,1"
      Dst: "[net.sf.cglib.core.EmitUtils].push_object(net.sf.cglib.core.CodeEmitter,java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils:708,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.core.EmitUtils].member_helper_type(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils"
    linkageType: ""
    functionLinenumber: 806
    functionLinenumberEnd: 864
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.List"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[net.sf.cglib.core.EmitUtils$10].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - "[java.util.BitSet].get(int)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[net.sf.cglib.beans.BeanMapEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.reflect.FastClassEmitter$GetIndexCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$16].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$12].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.Enhancer$5].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.util.StringSwitcher$Generator$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer$4].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.beans.BeanMapEmitter$1].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.EmitUtils$15].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper,int)"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[java.util.IdentityHashMap].size()"
    - "[java.awt.RenderingHints].size()"
    - "[java.util.jar.Attributes].size()"
    - "[java.util.HashMap].size()"
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.util.Hashtable].size()"
    - "[java.util.TreeMap].size()"
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Properties].size()"
    - "[java.util.WeakHashMap].size()"
    - "[java.util.AbstractMap].size()"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[java.util.BitSet].set(int)"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.awt.RenderingHints].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.HashSet].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.EmitUtils$16].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - "[java.util.Map].size()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 75
    EdgeCount: 111
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.EmitUtils:807"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:825"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:824"
        BranchSideFuncs:
        - "get(int)"
        - "getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - Branch String: "net.sf.cglib.core.EmitUtils:811"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:821"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:820"
        BranchSideFuncs:
        - "processCase(java.lang.Object,org.objectweb.asm.Label)"
        - "pop()"
    - Branch String: "net.sf.cglib.core.EmitUtils:812"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:813"
        BranchSideFuncs:
        - "emulateClassGetName(org.objectweb.asm.Type)"
        - "if_jump(int,org.objectweb.asm.Label)"
        - "push(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:812"
        BranchSideFuncs:
        - "emulateClassGetName(org.objectweb.asm.Type)"
        - "if_jump(int,org.objectweb.asm.Label)"
        - "push(java.lang.String)"
    - Branch String: "net.sf.cglib.core.EmitUtils:812"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:808"
        BranchSideFuncs:
        - "emulateClassGetName(org.objectweb.asm.Type)"
        - "if_jump(int,org.objectweb.asm.Label)"
        - "push(java.lang.String)"
      - BranchSide: "net.sf.cglib.core.EmitUtils:807"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:828"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:839"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:835"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:836"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:835"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.core.EmitUtils:835"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:825"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.EmitUtils:824"
        BranchSideFuncs:
        - "get(int)"
        - "getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - Branch String: "net.sf.cglib.core.EmitUtils:840"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:842"
        BranchSideFuncs:
        - "goTo(org.objectweb.asm.Label)"
    - Branch String: "net.sf.cglib.core.EmitUtils:840"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.EmitUtils:844"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "keySet()"
        - "string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
        - "<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
        - "set(int)"
        - "toArray(java.lang.Object[])"
        - "dup()"
        - "size()"
        - "aaload(int)"
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils:807,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.core.EmitUtils:808,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.core.EmitUtils:809,1"
      Dst: "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.core.EmitUtils:812,1"
      Dst: "[java.util.BitSet].get(int)"
    - Src: "net.sf.cglib.core.EmitUtils:813,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.core.EmitUtils:814,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.core.EmitUtils:815,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.core.EmitUtils:816,1"
      Dst: "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.core.EmitUtils:816,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.core.EmitUtils:818,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].if_jump(int,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:821,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    - Src: "net.sf.cglib.core.EmitUtils:822,1"
      Dst: "[net.sf.cglib.core.ObjectSwitchCallback].processCase(java.lang.Object,org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:830,1"
      Dst: "[net.sf.cglib.core.EmitUtils$15].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper,int)"
    - Src: "net.sf.cglib.core.EmitUtils:830,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.core.EmitUtils:835,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.core.EmitUtils:843,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.core.EmitUtils:845,1"
      Dst: "[java.util.BitSet].set(int)"
    - Src: "net.sf.cglib.core.EmitUtils:852,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.core.EmitUtils:852,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.core.EmitUtils:853,1"
      Dst: "[net.sf.cglib.core.EmitUtils$16].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    - Src: "net.sf.cglib.core.EmitUtils:853,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    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: 19
    CyclomaticComplexity: 10
  - functionName: "[net.sf.cglib.core.EmitUtils$15].<init>(net.sf.cglib.core.EmitUtils$ParameterTyper,int)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$15"
    linkageType: ""
    functionLinenumber: 829
    functionLinenumberEnd: 831
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$15:830,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: "[net.sf.cglib.core.EmitUtils$16].<init>(net.sf.cglib.core.CodeEmitter,java.util.Map,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$16"
    linkageType: ""
    functionLinenumber: 852
    functionLinenumberEnd: 854
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "java.util.Map"
    - "net.sf.cglib.core.ObjectSwitchCallback"
    - "net.sf.cglib.core.EmitUtils$ParameterTyper"
    - "org.objectweb.asm.Label"
    - "org.objectweb.asm.Label"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$16:853,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: "[net.sf.cglib.core.DefaultNamingPolicy].<init>()"
    functionSourceFile: "net.sf.cglib.core.DefaultNamingPolicy"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:30,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: "[net.sf.cglib.core.DefaultNamingPolicy].getClassName(java.lang.String,java.lang.String,java.lang.Object,net.sf.cglib.core.Predicate)"
    functionSourceFile: "net.sf.cglib.core.DefaultNamingPolicy"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    - "net.sf.cglib.core.Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    - "[jdk.internal.org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[org.objectweb.asm.Type].hashCode()"
    - "[net.sf.cglib.reflect.FastMember].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.io.File].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[org.objectweb.asm.ConstantDynamic].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[net.sf.cglib.reflect.MethodDelegate].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[net.sf.cglib.beans.BeanMap].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[org.objectweb.asm.Handle].hashCode()"
    - "[net.sf.cglib.proxy.CallbackHelper].hashCode()"
    - "[net.sf.cglib.core.Signature].hashCode()"
    - "[net.sf.cglib.core.ClassEmitter$FieldInfo].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[net.sf.cglib.reflect.FastClass].hashCode()"
    - "[net.sf.cglib.core.MethodInfo].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[net.sf.cglib.core.DefaultNamingPolicy].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[net.sf.cglib.core.ClassInfo].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[java.awt.AWTKeyStroke:java.awt.AlphaComposite:java.awt.AttributeValue:java.awt.BasicStroke:java.awt.BufferCapabilities$FlipContents:java.awt.Color:java.awt.Dimension:java.awt.DisplayMode:java.awt.Font:java.awt.Insets:java.awt.JobAttributes:java.awt.JobAttributes$DefaultSelectionType:java.awt.JobAttributes$DestinationType:java.awt.JobAttributes$DialogType:java.awt.JobAttributes$MultipleDocumentHandlingType:java.awt.JobAttributes$SidesType:java.awt.MenuShortcut:java.awt.PageAttributes:java.awt.PageAttributes$ColorType:java.awt.PageAttributes$MediaType:java.awt.PageAttributes$OrientationRequestedType:java.awt.PageAttributes$OriginType:java.awt.PageAttributes$PrintQualityType:java.awt.RenderingHints:java.awt.RenderingHints$Key:java.awt.datatransfer.DataFlavor:java.awt.datatransfer.MimeType:java.awt.datatransfer.MimeTypeParameterList:java.awt.font.FontRenderContext:java.awt.font.NumericShaper:java.awt.font.TextHitInfo:java.awt.font.TransformAttribute:java.awt.geom.AffineTransform:java.awt.geom.Point2D:java.awt.geom.Rectangle2D:java.awt.image.ColorModel:java.awt.image.IndexColorModel:java.beans.IndexedPropertyDescriptor:java.beans.PropertyDescriptor:java.io.FilePermission:java.io.ObjectStreamClass$DeserializationConstructorsCache$Key:java.lang.Character$Subset:java.lang.Object:java.lang.Package:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.constant.DynamicConstantDesc: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.LambdaFormEditor$TransformKey:java.lang.invoke.MemberName:java.lang.invoke.MethodType: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.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.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.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date: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.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.zip.ZipEntry:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.security.auth.Subject:jdk.internal.misc.Signal:net.sf.cglib.core.WeakCacheKey:sun.font.AttributeValues:sun.font.CoreMetrics:sun.font.FontLineMetrics:sun.font.FontStrikeDesc:sun.java2d.loops.CompositeType:sun.java2d.loops.SurfaceType:sun.java2d.pipe.Region: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.LocaleExtensions].hashCode()"
    - "[java.lang.Integer].toHexString(int)"
    - "[net.sf.cglib.core.DuplicatesPredicate].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.RejectModifierPredicate].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].evaluate(java.lang.Object)"
    - "[net.sf.cglib.core.VisibilityPredicate].evaluate(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.Object].hashCode()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.Predicate].evaluate(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,int)"
    functionUses: 1
    ICount: 32
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:39"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:41"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:40"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:41"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:48"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:47"
        BranchSideFuncs:
        - "toHexString(int)"
        - "hashCode()"
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:48"
        BranchSideFuncs:
        - "toHexString(int)"
        - "hashCode()"
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:47"
        BranchSideFuncs:
        - "toHexString(int)"
        - "hashCode()"
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:53"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:41,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:42,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:46,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:46,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:47,1"
      Dst: "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:48,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:48,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:48,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:51,1"
      Dst: "[net.sf.cglib.core.Predicate].evaluate(java.lang.Object)"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:52,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: 11
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    functionSourceFile: "net.sf.cglib.core.DefaultNamingPolicy"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "java.lang.String"
    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: "[net.sf.cglib.core.DefaultNamingPolicy].hashCode()"
    functionSourceFile: "net.sf.cglib.core.DefaultNamingPolicy"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    - "[java.lang.String].hashCode()"
    functionUses: 11
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:65,1"
      Dst: "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:65,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: "[net.sf.cglib.core.DefaultNamingPolicy].equals(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.DefaultNamingPolicy"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:69"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:68"
        BranchSideFuncs:
        - "getTag()"
        - "equals(java.lang.Object)"
    - Branch String: "net.sf.cglib.core.DefaultNamingPolicy:69"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DefaultNamingPolicy:68"
        BranchSideFuncs:
        - "getTag()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:69,1"
      Dst: "[net.sf.cglib.core.DefaultNamingPolicy].getTag()"
    - Src: "net.sf.cglib.core.DefaultNamingPolicy:69,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: 5
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.transform.ClassReaderGenerator].<init>(org.objectweb.asm.ClassReader,int)"
    functionSourceFile: "net.sf.cglib.transform.ClassReaderGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.objectweb.asm.ClassReader"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassReaderGenerator].<init>(org.objectweb.asm.ClassReader,org.objectweb.asm.Attribute[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassReaderGenerator:29,1"
      Dst: "[net.sf.cglib.transform.ClassReaderGenerator].<init>(org.objectweb.asm.ClassReader,org.objectweb.asm.Attribute[],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: "[net.sf.cglib.transform.ClassReaderGenerator].<init>(org.objectweb.asm.ClassReader,org.objectweb.asm.Attribute[],int)"
    functionSourceFile: "net.sf.cglib.transform.ClassReaderGenerator"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.objectweb.asm.ClassReader"
    - "org.objectweb.asm.Attribute[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.ClassReaderGenerator:34"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.ClassReaderGenerator:32"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.transform.ClassReaderGenerator:31"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.sf.cglib.transform.ClassReaderGenerator:32,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.ClassReaderGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.transform.ClassReaderGenerator"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,org.objectweb.asm.Attribute[],int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.ClassReaderGenerator:39,1"
      Dst: "[org.objectweb.asm.ClassReader].accept(org.objectweb.asm.ClassVisitor,org.objectweb.asm.Attribute[],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: "[net.sf.cglib.proxy.InvocationHandlerGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.InvocationHandlerGenerator"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:22,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: "[net.sf.cglib.proxy.InvocationHandlerGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.InvocationHandlerGenerator"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 56
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.proxy.Enhancer$6].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].create_arg_array()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.Block].end()"
    - "[net.sf.cglib.core.CodeEmitter$State:net.sf.cglib.core.ReflectUtils$5].getExceptionTypes()"
    - "[net.sf.cglib.core.EmitUtils].wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    functionUses: 1
    ICount: 35
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.InvocationHandlerGenerator:37"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.InvocationHandlerGenerator:55"
        BranchSideFuncs:
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
        - "end_method()"
        - "create_arg_array()"
        - "next()"
        - "begin_block()"
        - "beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "emitCallback(net.sf.cglib.core.CodeEmitter,int)"
        - "unbox(org.objectweb.asm.Type)"
        - "return_value()"
        - "getfield(java.lang.String)"
        - "getSignature()"
        - "getName()"
        - "getExceptionTypes()"
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "getImplSignature(net.sf.cglib.core.MethodInfo)"
        - "load_this()"
        - "getIndex(net.sf.cglib.core.MethodInfo)"
        - "end()"
        - "getReturnType()"
      - BranchSide: "net.sf.cglib.proxy.InvocationHandlerGenerator:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:37,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:37,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:39,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:40,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:40,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:42,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:43,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].begin_block()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:44,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:44,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:45,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:46,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:47,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].create_arg_array()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:48,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:49,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:49,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:49,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:50,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:51,1"
      Dst: "[net.sf.cglib.core.Block].end()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:52,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:52,1"
      Dst: "[net.sf.cglib.core.EmitUtils].wrap_undeclared_throwable(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.Block,org.objectweb.asm.Type[],org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:53,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.InvocationHandlerGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.InvocationHandlerGenerator"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.EmitUtils].load_method(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.Enhancer$6].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    functionUses: 1
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.InvocationHandlerGenerator:58"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.InvocationHandlerGenerator:63"
        BranchSideFuncs:
        - "load_method(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
        - "getName()"
        - "next()"
        - "getImplSignature(net.sf.cglib.core.MethodInfo)"
        - "putfield(java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.InvocationHandlerGenerator:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:58,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:58,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:60,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_method(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:61,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:61,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.InvocationHandlerGenerator:61,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(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: "[net.sf.cglib.core.EmitUtils$1].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$1"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    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: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$1:196,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.sf.cglib.core.EmitUtils$1:196,1"
      Dst: "[java.lang.Integer].valueOf(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: "[net.sf.cglib.core.ClassEmitter].<init>()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassTransformer].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:46,1"
      Dst: "[net.sf.cglib.transform.ClassTransformer].<init>(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: "[net.sf.cglib.core.ClassEmitter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 258
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[java.lang.String].replace(char,char)"
    - "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    - "[net.sf.cglib.core.TypeUtils].fromInternalNames(java.lang.String[])"
    functionUses: 6
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:253,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.ClassEmitter:254,1"
      Dst: "[net.sf.cglib.core.TypeUtils].fromInternalName(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:255,1"
      Dst: "[net.sf.cglib.core.TypeUtils].fromInternalNames(java.lang.String[])"
    - Src: "net.sf.cglib.core.ClassEmitter:251,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter].visitEnd()"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    functionUses: 6
    ICount: 3
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:260,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: "[net.sf.cglib.core.ClassEmitter].visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionDepth: 2
    returnType: "org.objectweb.asm.FieldVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[org.objectweb.asm.Type].getType(java.lang.String)"
    functionUses: 6
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:268,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:268,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,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: "[net.sf.cglib.core.ClassEmitter].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 280
    functionDepth: 7
    returnType: "org.objectweb.asm.MethodVisitor"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.TypeUtils].fromInternalNames(java.lang.String[])"
    functionUses: 8
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter:277,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.ClassEmitter:279,1"
      Dst: "[net.sf.cglib.core.TypeUtils].fromInternalNames(java.lang.String[])"
    - Src: "net.sf.cglib.core.ClassEmitter:277,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$2"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:159,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:160,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:161,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    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: "[net.sf.cglib.transform.impl.FieldProviderTransformer$2].processDefault()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$2"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$2:164,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    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: "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: 484
    functionLinenumberEnd: 488
    functionDepth: 2
    returnType: "net.sf.cglib.core.ClassInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getClassInfo(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.invoke.MemberName].getDeclaringClass()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.reflect.Member].getDeclaringClass()"
    functionUses: 8
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ReflectUtils$5:485"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ReflectUtils$5:487"
        BranchSideFuncs:
        - "getClassInfo(java.lang.Class)"
        - "getDeclaringClass()"
      - BranchSide: "net.sf.cglib.core.ReflectUtils$5:486"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$5:486,1"
      Dst: "[java.lang.reflect.Member].getDeclaringClass()"
    - Src: "net.sf.cglib.core.ReflectUtils$5:486,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClassInfo(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: 489
    functionLinenumberEnd: 491
    functionDepth: 0
    returnType: "int"
    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: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: 492
    functionLinenumberEnd: 494
    functionDepth: 0
    returnType: "net.sf.cglib.core.Signature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    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: "[net.sf.cglib.core.ReflectUtils$5].getExceptionTypes()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionDepth: 2
    returnType: "org.objectweb.asm.Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$5:496,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(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: "[net.sf.cglib.core.ReflectUtils$5].getAttribute()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$5"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.proxy.DispatcherGenerator].<init>(boolean)"
    functionSourceFile: "net.sf.cglib.proxy.DispatcherGenerator"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.DispatcherGenerator: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: "[net.sf.cglib.proxy.DispatcherGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.DispatcherGenerator"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 63
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1:net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    functionUses: 1
    ICount: 34
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.DispatcherGenerator:44"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:62"
        BranchSideFuncs:
        - "next()"
        - "isProtected(int)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:61"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.DispatcherGenerator:46"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:61"
        BranchSideFuncs:
        - "beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "emitCallback(net.sf.cglib.core.CodeEmitter,int)"
        - "getIndex(net.sf.cglib.core.MethodInfo)"
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:60"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.DispatcherGenerator:49"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:53"
        BranchSideFuncs:
        - "load_this()"
      - BranchSide: "net.sf.cglib.proxy.DispatcherGenerator:52"
        BranchSideFuncs:
        - "invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:44,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:44,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:45,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:46,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:46,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isProtected(int)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:47,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:48,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:48,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:50,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:51,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:55,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:55,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:55,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:56,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:57,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:58,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.DispatcherGenerator:59,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: 9
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.proxy.DispatcherGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.DispatcherGenerator"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    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: "[net.sf.cglib.core.ReflectUtils$2].<init>()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$2"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$2:71,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: "[net.sf.cglib.core.ReflectUtils$2].run()"
    functionSourceFile: "net.sf.cglib.core.ReflectUtils$2"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.ReflectUtils$2:73,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils$2:74,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "net.sf.cglib.core.ReflectUtils$2:75,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "net.sf.cglib.core.ReflectUtils$2:76,1"
      Dst: "[java.lang.reflect.Field].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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils$16].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$16"
    linkageType: ""
    functionLinenumber: 854
    functionLinenumberEnd: 857
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.EmitUtils].member_helper_type(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 14
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$16:855,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$16:855,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_helper_type(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    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: "[net.sf.cglib.core.EmitUtils$16].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$16"
    linkageType: ""
    functionLinenumber: 857
    functionLinenumberEnd: 860
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$16:858,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.proxy.Proxy].<init>(net.sf.cglib.proxy.InvocationHandler)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.proxy.InvocationHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].getClass()"
    - "[net.sf.cglib.proxy.Enhancer].registerCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.proxy.Proxy:56,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.proxy.Proxy:56,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].registerCallbacks(java.lang.Class,net.sf.cglib.proxy.Callback[])"
    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: "[net.sf.cglib.proxy.Proxy].getInvocationHandler(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.proxy.InvocationHandler"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Proxy:68"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Proxy:71"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Proxy:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy:69,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Proxy].getProxyClass(java.lang.ClassLoader,java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.Proxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Enhancer].<init>()"
    - "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - "[net.sf.cglib.proxy.Enhancer].setCallbackTypes(java.lang.Class[])"
    - "[net.sf.cglib.proxy.Enhancer].setCallbackFilter(net.sf.cglib.proxy.CallbackFilter)"
    - "[net.sf.cglib.proxy.Enhancer].setUseFactory(boolean)"
    - "[net.sf.cglib.proxy.Enhancer].createClass()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy:75,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].<init>()"
    - Src: "net.sf.cglib.proxy.Proxy:76,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setSuperclass(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Proxy:77,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setInterfaces(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Proxy:78,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbackTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Proxy:82,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setCallbackFilter(net.sf.cglib.proxy.CallbackFilter)"
    - Src: "net.sf.cglib.proxy.Proxy:83,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].setUseFactory(boolean)"
    - Src: "net.sf.cglib.proxy.Proxy:84,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].createClass()"
    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: "[net.sf.cglib.proxy.Proxy].isProxyClass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSuperclass()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy:88,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.sf.cglib.proxy.Proxy:88,1"
      Dst: "[java.lang.Object].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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],net.sf.cglib.proxy.InvocationHandler)"
    functionSourceFile: "net.sf.cglib.proxy.Proxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.Class[]"
    - "net.sf.cglib.proxy.InvocationHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Proxy].getProxyClass(java.lang.ClassLoader,java.lang.Class[])"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Proxy:93,1"
      Dst: "[net.sf.cglib.proxy.Proxy].getProxyClass(java.lang.ClassLoader,java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Proxy:94,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Proxy:94,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Proxy:98,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Route].<init>(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Route"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.util.ArrayList].clear()"
    - "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].size()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Mixin$Route:220"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:231"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:230"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Route:224"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:217"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:216"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Route:226"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:229"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:228"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Route:234"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:240"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Route:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Route:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:218,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:219,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:221,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:222,1"
      Dst: "[java.util.ArrayList].clear()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:223,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].addAllInterfaces(java.lang.Class,java.util.List)"
    - Src: "net.sf.cglib.proxy.Mixin$Route:224,1"
      Dst: "[java.util.ArrayList].iterator()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:224,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:225,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:226,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Mixin$Route:227,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.proxy.Mixin$Route:227,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Mixin$Route:231,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:234,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:234,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.proxy.Mixin$Route:237,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Mixin$Route:237,1"
      Dst: "[java.lang.Integer].intValue()"
    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: "[net.sf.cglib.proxy.InterfaceMaker].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:43,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:35,1"
      Dst: "[java.util.HashMap].<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: "[net.sf.cglib.proxy.InterfaceMaker].add(net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:52,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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.InterfaceMaker].add(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    - "[net.sf.cglib.proxy.InterfaceMaker].add(net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:61,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:62,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:61,1"
      Dst: "[net.sf.cglib.proxy.InterfaceMaker].add(net.sf.cglib.core.Signature,org.objectweb.asm.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: "[net.sf.cglib.proxy.InterfaceMaker].add(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethods()"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.proxy.InterfaceMaker].add(java.lang.reflect.Method)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.InterfaceMaker:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:79"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:78"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.InterfaceMaker:75"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:72"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:72,1"
      Dst: "[java.lang.Class].getMethods()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:75,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:75,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:75,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:76,1"
      Dst: "[net.sf.cglib.proxy.InterfaceMaker].add(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: 6
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.proxy.InterfaceMaker].create()"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].setUseCache(boolean)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:85,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setUseCache(boolean)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:86,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.proxy.InterfaceMaker].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.InterfaceMaker].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "java.lang.Object"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.InterfaceMaker].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:98,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    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: "[net.sf.cglib.proxy.InterfaceMaker].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.proxy.InterfaceMaker"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 21
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.InterfaceMaker:109"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:116"
        BranchSideFuncs:
        - "end_method()"
        - "next()"
        - "get(java.lang.Object)"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
      - BranchSide: "net.sf.cglib.proxy.InterfaceMaker:115"
        BranchSideFuncs:
        - "end_class()"
    Callsites:
    - Src: "net.sf.cglib.proxy.InterfaceMaker:102,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:105,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:103,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:109,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:109,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:109,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:110,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:111,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:112,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.proxy.InterfaceMaker:116,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_class()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.core.TinyBitSet].<init>()"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TinyBitSet:19,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: "[net.sf.cglib.core.TinyBitSet].gcount(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TinyBitSet:25"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TinyBitSet:29"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TinyBitSet:28"
        BranchSideFuncs: []
    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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TinyBitSet].topbit(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TinyBitSet:40"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TinyBitSet:42"
        BranchSideFuncs: []
    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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TinyBitSet].log2(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TinyBitSet:48"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TinyBitSet:50"
        BranchSideFuncs: []
    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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.TinyBitSet].length()"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TinyBitSet].topbit(int)"
    - "[net.sf.cglib.core.TinyBitSet].log2(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.TinyBitSet:55,1"
      Dst: "[net.sf.cglib.core.TinyBitSet].topbit(int)"
    - Src: "net.sf.cglib.core.TinyBitSet:55,1"
      Dst: "[net.sf.cglib.core.TinyBitSet].log2(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: "[net.sf.cglib.core.TinyBitSet].cardinality()"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TinyBitSet:66"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TinyBitSet:70"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.core.TinyBitSet:69"
        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: "[net.sf.cglib.core.TinyBitSet].get(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.TinyBitSet:74"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.TinyBitSet:73"
        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: "[net.sf.cglib.core.TinyBitSet].set(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    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: "[net.sf.cglib.core.TinyBitSet].clear(int)"
    functionSourceFile: "net.sf.cglib.core.TinyBitSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    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: "[net.sf.cglib.core.MethodWrapper].<init>()"
    functionSourceFile: "net.sf.cglib.core.MethodWrapper"
    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: "net.sf.cglib.core.MethodWrapper:30,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: "[net.sf.cglib.beans.BeanGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:43,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    - Src: "net.sf.cglib.beans.BeanGenerator:39,1"
      Dst: "[java.util.HashMap].<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: "[net.sf.cglib.beans.BeanGenerator].setSuperclass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:53"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:56"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:55"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BeanGenerator:53"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:56"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:53,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: 4
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.beans.BeanGenerator].addProperty(java.lang.String,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:60"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:63"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:60,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanGenerator:61,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanGenerator:61,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanGenerator:63,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanGenerator:63,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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanGenerator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:70"
        BranchSideFuncs:
        - "getClassLoader()"
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:68,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.beans.BeanGenerator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:75,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.beans.BeanGenerator].create()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BeanGenerator].createHelper()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:80,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator].createHelper()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanGenerator].createHelper()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.beans.BeanGenerator$BeanGeneratorKey].newInstance(java.lang.String,java.util.Map)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:89"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:92"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:91"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.beans.BeanGenerator:92"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:92"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:90,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.beans.BeanGenerator:90,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanGenerator:93,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator$BeanGeneratorKey].newInstance(java.lang.String,java.util.Map)"
    - Src: "net.sf.cglib.beans.BeanGenerator:94,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.beans.BeanGenerator].createClass()"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BeanGenerator].createHelper()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:85,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator].createHelper()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 115
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.beans.BeanMap].size()"
    - "[java.util.IdentityHashMap].size()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.EmitUtils].add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    - "[java.util.Map].size()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 33
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:101"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:103"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.ClassVisitor)"
        - "getClassName()"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "getType(java.lang.Class)"
    - Branch String: "net.sf.cglib.beans.BeanGenerator:108"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:104"
        BranchSideFuncs:
        - "end_class()"
        - "null_constructor(net.sf.cglib.core.ClassEmitter)"
        - "getClassName()"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "getType(java.lang.Class)"
        - "add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:103"
        BranchSideFuncs:
        - "<init>(org.objectweb.asm.ClassVisitor)"
        - "getClassName()"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "getType(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:98,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.sf.cglib.beans.BeanGenerator:99,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.beans.BeanGenerator:99,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.beans.BeanGenerator:102,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanGenerator:104,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.beans.BeanGenerator:107,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.beans.BeanGenerator:108,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanGenerator:105,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.beans.BeanGenerator:111,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.beans.BeanGenerator:112,1"
      Dst: "[net.sf.cglib.core.EmitUtils].add_properties(net.sf.cglib.core.ClassEmitter,java.lang.String[],org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.beans.BeanGenerator:113,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_class()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.beans.BeanGenerator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:117"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:120"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:119"
        BranchSideFuncs:
        - "newInstance(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:120,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanGenerator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 130
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:125"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:125"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:124"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "net.sf.cglib.beans.BeanGenerator:126"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:129"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:128"
        BranchSideFuncs:
        - "newInstance(java.lang.Class)"
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:125,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.sf.cglib.beans.BeanGenerator:129,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: 6
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanGenerator].addProperties(net.sf.cglib.beans.BeanGenerator,java.util.Map)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.beans.BeanGenerator"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanGenerator].addProperty(java.lang.String,java.lang.Class)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:134"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:138"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:134,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.beans.BeanGenerator:134,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.beans.BeanGenerator:134,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.beans.BeanGenerator:135,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.beans.BeanGenerator:136,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanGenerator:136,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator].addProperty(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanGenerator].addProperties(net.sf.cglib.beans.BeanGenerator,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.beans.BeanGenerator"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - "[net.sf.cglib.beans.BeanGenerator].addProperties(net.sf.cglib.beans.BeanGenerator,java.beans.PropertyDescriptor[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:141,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getBeanProperties(java.lang.Class)"
    - Src: "net.sf.cglib.beans.BeanGenerator:141,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator].addProperties(net.sf.cglib.beans.BeanGenerator,java.beans.PropertyDescriptor[])"
    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: "[net.sf.cglib.beans.BeanGenerator].addProperties(net.sf.cglib.beans.BeanGenerator,java.beans.PropertyDescriptor[])"
    functionSourceFile: "net.sf.cglib.beans.BeanGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.beans.BeanGenerator"
    - "java.beans.PropertyDescriptor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.beans.FeatureDescriptor].getName()"
    - "[java.beans.PropertyDescriptor].getPropertyType()"
    - "[net.sf.cglib.beans.BeanGenerator].addProperty(java.lang.String,java.lang.Class)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanGenerator:145"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanGenerator:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.beans.BeanGenerator:146,1"
      Dst: "[java.beans.FeatureDescriptor].getName()"
    - Src: "net.sf.cglib.beans.BeanGenerator:146,1"
      Dst: "[java.beans.PropertyDescriptor].getPropertyType()"
    - Src: "net.sf.cglib.beans.BeanGenerator:146,1"
      Dst: "[net.sf.cglib.beans.BeanGenerator].addProperty(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:105,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:109,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.proxy.Mixin$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:113,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.proxy.Mixin$Generator].setStyle(int)"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:124,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:124,1"
      Dst: "[java.lang.IllegalArgumentException].<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: 4
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].setClasses(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].setDelegates(java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].create()"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.proxy.Mixin"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.sf.cglib.proxy.Mixin].route(java.lang.Object[])"
    - "[net.sf.cglib.core.ReflectUtils].getClasses(java.lang.Object[])"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class,int)"
    - "[net.sf.cglib.core.ReflectUtils].findPackageProtected(java.lang.Class[])"
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - "[net.sf.cglib.proxy.Mixin$MixinKey].newInstance(int,java.lang.String[],int[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:137"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:140"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:139"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:137"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:140"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:139"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:142"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:167"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:166"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:151"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:154"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:153"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:154"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:167"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:166"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:156"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:159"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:158"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:159"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:167"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:166"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.Mixin$Generator:160"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:159"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Mixin$Generator:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:138,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:143,1"
      Dst: "[net.sf.cglib.proxy.Mixin].route(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:152,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getClasses(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:160,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:161,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class,java.lang.Class,int)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:167,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findPackageProtected(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:167,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:167,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:169,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getNames(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:169,1"
      Dst: "[net.sf.cglib.proxy.Mixin$MixinKey].newInstance(int,java.lang.String[],int[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:169,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: 17
    CyclomaticComplexity: 8
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 185
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],int[])"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[net.sf.cglib.proxy.MixinBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[])"
    - "[net.sf.cglib.proxy.MixinEverythingEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[])"
    functionUses: 3
    ICount: 20
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:175,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:175,1"
      Dst: "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],int[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:178,1"
      Dst: "[net.sf.cglib.proxy.MixinBeanEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:181,1"
      Dst: "[net.sf.cglib.proxy.MixinEverythingEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,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: 5
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.proxy.MixinEmitter].<init>(org.objectweb.asm.ClassVisitor,java.lang.String,java.lang.Class[],int[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinEmitter"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 85
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    - "java.lang.String"
    - "java.lang.Class[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.proxy.MixinEverythingEmitter].getInterfaces(java.lang.Class[])"
    - "[net.sf.cglib.proxy.MixinEmitter].getInterfaces(java.lang.Class[])"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.HashSet].<init>()"
    - "[net.sf.cglib.proxy.MixinEmitter].getMethods(java.lang.Class)"
    - "[net.sf.cglib.proxy.MixinBeanEmitter].getMethods(java.lang.Class)"
    - "[net.sf.cglib.proxy.MixinEverythingEmitter].getMethods(java.lang.Class)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.ReflectUtils$5].getClassInfo()"
    - "[net.sf.cglib.core.ClassEmitter$1:net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    functionUses: 3
    ICount: 66
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MixinEmitter:61"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:83"
        BranchSideFuncs:
        - "getMethods(java.lang.Class)"
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:82"
        BranchSideFuncs:
        - "end_class()"
    - Branch String: "net.sf.cglib.proxy.MixinEmitter:63"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:38"
        BranchSideFuncs:
        - "create(java.lang.reflect.Method)"
        - "add(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:37"
        BranchSideFuncs:
        - "getInterfaces(java.lang.Class[])"
        - "<init>()"
        - "null_constructor(net.sf.cglib.core.ClassEmitter)"
        - "getTypes(java.lang.Class[])"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
        - "super_invoke_constructor()"
        - "factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
        - "load_arg(int)"
        - "<init>(org.objectweb.asm.ClassVisitor)"
        - "putfield(java.lang.String)"
    - Branch String: "net.sf.cglib.proxy.MixinEmitter:64"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:62"
        BranchSideFuncs:
        - "getMethodInfo(java.lang.reflect.Member)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:61"
        BranchSideFuncs:
        - "getMethods(java.lang.Class)"
    - Branch String: "net.sf.cglib.proxy.MixinEmitter:67"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:70"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:69"
        BranchSideFuncs:
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "load_this()"
        - "getfield(java.lang.String)"
        - "aaload(int)"
    - Branch String: "net.sf.cglib.proxy.MixinEmitter:73"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:70"
        BranchSideFuncs:
        - "end_method()"
        - "getClassInfo()"
        - "return_value()"
        - "checkcast(org.objectweb.asm.Type)"
        - "getType()"
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "load_args()"
        - "aaload(int)"
      - BranchSide: "net.sf.cglib.proxy.MixinEmitter:69"
        BranchSideFuncs:
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "load_this()"
        - "getfield(java.lang.String)"
        - "aaload(int)"
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinEmitter:38,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:44,1"
      Dst: "[net.sf.cglib.proxy.MixinEmitter].getInterfaces(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.MixinEmitter:44,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.MixinEmitter:40,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:46,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:47,1"
      Dst: "[net.sf.cglib.core.EmitUtils].factory_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:49,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:51,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.MixinEmitter:52,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:53,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_invoke_constructor()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:55,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:56,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:57,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:58,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:60,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:62,1"
      Dst: "[net.sf.cglib.proxy.MixinEmitter].getMethods(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:64,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:64,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:65,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:67,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:70,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:72,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:73,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload(int)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:74,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getClassInfo()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:74,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:74,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:75,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.proxy.MixinEmitter:76,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.MixinEmitter:83,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 14
    CyclomaticComplexity: 6
  - functionName: "[net.sf.cglib.proxy.MixinEmitter].getInterfaces(java.lang.Class[])"
    functionSourceFile: "net.sf.cglib.proxy.MixinEmitter"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.lang.Class[]"
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MixinEmitter].getMethods(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.MixinEmitter"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "java.lang.reflect.Method[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethods()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MixinEmitter:91,1"
      Dst: "[java.lang.Class].getMethods()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Mixin$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[net.sf.cglib.proxy.Mixin].newInstance(java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:187,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.Mixin$Generator:187,1"
      Dst: "[net.sf.cglib.proxy.Mixin].newInstance(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: "[net.sf.cglib.proxy.Mixin$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.Mixin$Generator"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.Mixin].newInstance(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Mixin$Generator:191,1"
      Dst: "[net.sf.cglib.proxy.Mixin].newInstance(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: "[net.sf.cglib.core.DefaultGeneratorStrategy].<init>()"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:20,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: "[net.sf.cglib.core.DefaultGeneratorStrategy].generate(net.sf.cglib.core.ClassGenerator)"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DefaultGeneratorStrategy].getClassVisitor()"
    - "[net.sf.cglib.proxy.Enhancer].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.util.StringSwitcher$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanCopier$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanMap$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.ConstructorDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.core.KeyFactory$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.proxy.Mixin$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.util.ParallelSorter$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.TransformingClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.ClassReaderGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.proxy.InterfaceMaker].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.FastClass$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.ImmutableBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BeanGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.reflect.MethodDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.beans.BulkBean$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy].transform(net.sf.cglib.core.ClassGenerator)"
    - "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(net.sf.cglib.core.ClassGenerator)"
    - "[net.sf.cglib.core.DebuggingClassWriter].toByteArray()"
    - "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(byte[])"
    - "[net.sf.cglib.core.ClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionUses: 1
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:24,1"
      Dst: "[net.sf.cglib.core.DefaultGeneratorStrategy].getClassVisitor()"
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:25,1"
      Dst: "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(net.sf.cglib.core.ClassGenerator)"
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:25,1"
      Dst: "[net.sf.cglib.core.ClassGenerator].generateClass(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:26,1"
      Dst: "[net.sf.cglib.core.DebuggingClassWriter].toByteArray()"
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:26,1"
      Dst: "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DefaultGeneratorStrategy].getClassVisitor()"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "net.sf.cglib.core.DebuggingClassWriter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DebuggingClassWriter].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:30,1"
      Dst: "[net.sf.cglib.core.DebuggingClassWriter].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.core.DebuggingClassWriter].<init>(int)"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.ClassVisitor].<init>(int,org.objectweb.asm.ClassVisitor)"
    - "[org.objectweb.asm.ClassWriter].<init>(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DebuggingClassWriter:49,1"
      Dst: "[org.objectweb.asm.ClassWriter].<init>(int)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter:49,1"
      Dst: "[org.objectweb.asm.ClassVisitor].<init>(int,org.objectweb.asm.ClassVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(net.sf.cglib.core.ClassGenerator)"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "net.sf.cglib.core.ClassGenerator"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.ClassGenerator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.core.DebuggingClassWriter].toByteArray()"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.DebuggingClassWriter$1].<init>(net.sf.cglib.core.DebuggingClassWriter)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[net.sf.cglib.core.DebuggingClassWriter$1].run()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DebuggingClassWriter:73,1"
      Dst: "[net.sf.cglib.core.DebuggingClassWriter$1].<init>(net.sf.cglib.core.DebuggingClassWriter)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter:73,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DefaultGeneratorStrategy].transform(byte[])"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      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: "[net.sf.cglib.core.DefaultGeneratorStrategy].getClassWriter()"
    functionSourceFile: "net.sf.cglib.core.DefaultGeneratorStrategy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.objectweb.asm.ClassWriter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DefaultGeneratorStrategy:36,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    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: "[net.sf.cglib.core.DebuggingClassWriter].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    - "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.DebuggingClassWriter:58,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.sf.cglib.core.DebuggingClassWriter:60,1"
      Dst: "[org.objectweb.asm.ClassVisitor].visit(int,int,java.lang.String,java.lang.String,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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DebuggingClassWriter].getClassName()"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.DebuggingClassWriter].getSuperName()"
    functionSourceFile: "net.sf.cglib.core.DebuggingClassWriter"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.Enhancer$5].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$5"
    linkageType: ""
    functionLinenumber: 1071
    functionLinenumberEnd: 1083
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].aaload()"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 4
    ICount: 27
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$5:1074"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$5:1079"
        BranchSideFuncs:
        - "getSignature()"
        - "goTo(org.objectweb.asm.Label)"
        - "invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$5:1073,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1073,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1075,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1076,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1077,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aaload()"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1078,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1080,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.Enhancer$5:1081,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.Enhancer$5].processDefault()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$5"
    linkageType: ""
    functionLinenumber: 1083
    functionLinenumberEnd: 1086
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$5:1084,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1:76,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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1].evaluate(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$1:78,1"
      Dst: "[java.util.Set].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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.ClassEmitter$2].visitMaxs(int,int)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$2"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    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: "[net.sf.cglib.core.ClassEmitter$2].visitInsn(int)"
    functionSourceFile: "net.sf.cglib.core.ClassEmitter$2"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    functionUses: 45
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.ClassEmitter$2:155"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.ClassEmitter$2:158"
        BranchSideFuncs:
        - "visitInsn(int)"
      - BranchSide: "net.sf.cglib.core.ClassEmitter$2:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.ClassEmitter$2:156,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    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: 6
    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: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder].visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 161
    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:
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[java.awt.RenderingHints].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].<init>(net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder,int,java.lang.reflect.Method)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 8
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:145"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:160"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder,int,java.lang.reflect.Method)"
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:143,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:144,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder:147,1"
      Dst: "[net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder$1].<init>(net.sf.cglib.core.DuplicatesPredicate$UnnecessaryBridgeFinder,int,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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$3"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 15
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:178,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:179,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:180,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:181,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.FieldProviderTransformer$3].processDefault()"
    functionSourceFile: "net.sf.cglib.transform.impl.FieldProviderTransformer$3"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.FieldProviderTransformer$3:184,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].<init>()"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    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: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback:21,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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeInt(java.lang.Object,java.lang.String,int,int)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeChar(java.lang.Object,java.lang.String,char,char)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeByte(java.lang.Object,java.lang.String,byte,byte)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeBoolean(java.lang.Object,java.lang.String,boolean,boolean)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeShort(java.lang.Object,java.lang.String,short,short)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "short"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "short"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeFloat(java.lang.Object,java.lang.String,float,float)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeDouble(java.lang.Object,java.lang.String,double,double)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeLong(java.lang.Object,java.lang.String,long,long)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].writeObject(java.lang.Object,java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readInt(java.lang.Object,java.lang.String,int)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readChar(java.lang.Object,java.lang.String,char)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readByte(java.lang.Object,java.lang.String,byte)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readBoolean(java.lang.Object,java.lang.String,boolean)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readShort(java.lang.Object,java.lang.String,short)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "short"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readFloat(java.lang.Object,java.lang.String,float)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readDouble(java.lang.Object,java.lang.String,double)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readLong(java.lang.Object,java.lang.String,long)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.transform.impl.AbstractInterceptFieldCallback].readObject(java.lang.Object,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.sf.cglib.transform.impl.AbstractInterceptFieldCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.core.KeyFactory$3].<init>()"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$3"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$3:120,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: "[net.sf.cglib.core.KeyFactory$3].customize(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.core.KeyFactory$3"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.KeyFactory$3:122"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.KeyFactory$3:126"
        BranchSideFuncs:
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
      - BranchSide: "net.sf.cglib.core.KeyFactory$3:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.KeyFactory$3:122,1"
      Dst: "[org.objectweb.asm.Type].equals(java.lang.Object)"
    - Src: "net.sf.cglib.core.KeyFactory$3:123,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].<init>(net.sf.cglib.reflect.MulticastDelegate$Generator,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,boolean,net.sf.cglib.core.Local)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator$1"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.sf.cglib.reflect.MulticastDelegate$Generator"
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.MethodInfo"
    - "boolean"
    - "net.sf.cglib.core.Local"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:153,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: "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].processElement(org.objectweb.asm.Type)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator$1"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:158"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:161"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:155,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:155,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:156,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:157,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator$1:159,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    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: "[net.sf.cglib.transform.impl.AddInitTransformer$1].visitInsn(int)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddInitTransformer$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[org.objectweb.asm.MethodVisitor].visitInsn(int)"
    functionUses: 45
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddInitTransformer$1:52"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer$1:56"
        BranchSideFuncs:
        - "invoke(net.sf.cglib.core.MethodInfo)"
        - "load_this()"
      - BranchSide: "net.sf.cglib.transform.impl.AddInitTransformer$1:55"
        BranchSideFuncs:
        - "visitInsn(int)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer$1:53,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer$1:54,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.transform.impl.AddInitTransformer$1:56,1"
      Dst: "[org.objectweb.asm.MethodVisitor].visitInsn(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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.core.ClassesKey].<init>()"
    functionSourceFile: "net.sf.cglib.core.ClassesKey"
    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: "net.sf.cglib.core.ClassesKey:25,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: "[net.sf.cglib.proxy.MethodProxy].create(java.lang.Class,java.lang.Class,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.proxy.MethodProxy"
    argCount: 5
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].<init>()"
    - "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.proxy.MethodProxy$CreateInfo].<init>(java.lang.Class,java.lang.Class)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:48,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].<init>()"
    - Src: "net.sf.cglib.proxy.MethodProxy:49,1"
      Dst: "[net.sf.cglib.core.Signature].<init>(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodProxy:51,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy$CreateInfo].<init>(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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MethodProxy].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:124,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: "[net.sf.cglib.proxy.MethodProxy].init()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy$FastClassInfo].<init>()"
    - "[net.sf.cglib.proxy.MethodProxy].helper(net.sf.cglib.proxy.MethodProxy$CreateInfo,java.lang.Class)"
    - "[net.sf.cglib.reflect.FastClass].getIndex(net.sf.cglib.core.Signature)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodProxy:65"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodProxy:82"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.MethodProxy:69"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodProxy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:73,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy$FastClassInfo].<init>()"
    - Src: "net.sf.cglib.proxy.MethodProxy:74,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].helper(net.sf.cglib.proxy.MethodProxy$CreateInfo,java.lang.Class)"
    - Src: "net.sf.cglib.proxy.MethodProxy:76,1"
      Dst: "[net.sf.cglib.reflect.FastClass].getIndex(net.sf.cglib.core.Signature)"
    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: "[net.sf.cglib.proxy.MethodProxy].helper(net.sf.cglib.proxy.MethodProxy$CreateInfo,java.lang.Class)"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.reflect.FastClass"
    argCount: 2
    argTypes:
    - "net.sf.cglib.proxy.MethodProxy$CreateInfo"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.FastClass$Generator].<init>()"
    - "[net.sf.cglib.reflect.FastClass$Generator].setType(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setClassLoader(java.lang.ClassLoader)"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamingPolicy(net.sf.cglib.core.NamingPolicy)"
    - "[net.sf.cglib.core.AbstractClassGenerator].setStrategy(net.sf.cglib.core.GeneratorStrategy)"
    - "[net.sf.cglib.core.AbstractClassGenerator].setAttemptLoad(boolean)"
    - "[net.sf.cglib.reflect.FastClass$Generator].create()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:115,1"
      Dst: "[net.sf.cglib.reflect.FastClass$Generator].<init>()"
    - Src: "net.sf.cglib.proxy.MethodProxy:116,1"
      Dst: "[net.sf.cglib.reflect.FastClass$Generator].setType(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.MethodProxy:117,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.sf.cglib.proxy.MethodProxy:117,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setClassLoader(java.lang.ClassLoader)"
    - Src: "net.sf.cglib.proxy.MethodProxy:118,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamingPolicy(net.sf.cglib.core.NamingPolicy)"
    - Src: "net.sf.cglib.proxy.MethodProxy:119,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setStrategy(net.sf.cglib.core.GeneratorStrategy)"
    - Src: "net.sf.cglib.proxy.MethodProxy:120,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setAttemptLoad(boolean)"
    - Src: "net.sf.cglib.proxy.MethodProxy:121,1"
      Dst: "[net.sf.cglib.reflect.FastClass$Generator].create()"
    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: "[net.sf.cglib.proxy.MethodProxy].getSignature()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.core.Signature"
    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: "[net.sf.cglib.proxy.MethodProxy].getSuperName()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:141,1"
      Dst: "[net.sf.cglib.core.Signature].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: "[net.sf.cglib.proxy.MethodProxy].getSuperIndex()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:152,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].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: "[net.sf.cglib.proxy.MethodProxy].getFastClass()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "net.sf.cglib.reflect.FastClass"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:158,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].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: "[net.sf.cglib.proxy.MethodProxy].getSuperFastClass()"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "net.sf.cglib.reflect.FastClass"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:164,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].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: "[net.sf.cglib.proxy.MethodProxy].find(java.lang.Class,net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "net.sf.cglib.proxy.MethodProxy"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:178,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.proxy.MethodProxy:180,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.MethodProxy:182,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.Class)"
    - Src: "net.sf.cglib.proxy.MethodProxy:182,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodProxy:184,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(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: 4
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.proxy.MethodProxy].invoke(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].init()"
    - "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.sf.cglib.core.Signature)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodProxy:208"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodProxy:210"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.MethodProxy:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:202,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].init()"
    - Src: "net.sf.cglib.proxy.MethodProxy:204,1"
      Dst: "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.MethodProxy:206,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    - Src: "net.sf.cglib.proxy.MethodProxy:209,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodProxy:209,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      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: "[net.sf.cglib.proxy.MethodProxy].invokeSuper(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "net.sf.cglib.proxy.MethodProxy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.proxy.MethodProxy].init()"
    - "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodProxy:226,1"
      Dst: "[net.sf.cglib.proxy.MethodProxy].init()"
    - Src: "net.sf.cglib.proxy.MethodProxy:228,1"
      Dst: "[net.sf.cglib.reflect.FastClass].invoke(int,java.lang.Object,java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.MethodProxy:230,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.AddDelegateTransformer].<init>(java.lang.Class[],java.lang.Class)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class[]"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:38,1"
      Dst: "[net.sf.cglib.transform.ClassEmitterTransformer].<init>()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:40,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:43,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:45,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<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: 3
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 72
    functionDepth: 8
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.objectweb.asm.Type"
    - "org.objectweb.asm.Type[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[java.lang.Class].getMethods()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isAbstract(int)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].addDelegate(java.lang.reflect.Method)"
    functionUses: 12
    ICount: 38
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:68"
        BranchSideFuncs:
        - "begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:60"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:68"
        BranchSideFuncs:
        - "getMethods()"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:67"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:62"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:53"
        BranchSideFuncs:
        - "isAbstract(int)"
        - "getModifiers()"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:52"
        BranchSideFuncs:
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "add(org.objectweb.asm.Type[],org.objectweb.asm.Type[])"
        - "getTypes(java.lang.Class[])"
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:63"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:61"
        BranchSideFuncs:
        - "addDelegate(java.lang.reflect.Method)"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:60"
        BranchSideFuncs:
        - "getMethods()"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:51,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isInterface(int)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:53,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:53,1"
      Dst: "[net.sf.cglib.core.TypeUtils].add(org.objectweb.asm.Type[],org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:54,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:56,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:61,1"
      Dst: "[java.lang.Class].getMethods()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:63,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:63,1"
      Dst: "[java.lang.reflect.Modifier].isAbstract(int)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:64,1"
      Dst: "[net.sf.cglib.transform.impl.AddDelegateTransformer].addDelegate(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: 12
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.transform.impl.AddDelegateTransformer].addDelegate(java.lang.reflect.Method)"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[java.lang.reflect.Method].getExceptionTypes()"
    - "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    functionUses: 1
    ICount: 33
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:99"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:104"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:98,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:98,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:98,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:99,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:99,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:99,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:100,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:103,1"
      Dst: "[net.sf.cglib.core.CodeGenerationException].<init>(java.lang.Throwable)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:106,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:107,1"
      Dst: "[java.lang.reflect.Method].getExceptionTypes()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:107,1"
      Dst: "[net.sf.cglib.core.TypeUtils].getTypes(java.lang.Class[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:108,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:109,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:110,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:111,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:113,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    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: 1
  - functionName: "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    functionSourceFile: "net.sf.cglib.transform.impl.AddDelegateTransformer"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 93
    functionDepth: 7
    returnType: "net.sf.cglib.core.CodeEmitter"
    argCount: 3
    argTypes:
    - "int"
    - "net.sf.cglib.core.Signature"
    - "org.objectweb.asm.Type[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].<init>(net.sf.cglib.transform.impl.AddDelegateTransformer,net.sf.cglib.core.CodeEmitter)"
    functionUses: 33
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.AddDelegateTransformer:75"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:92"
        BranchSideFuncs:
        - "<init>(net.sf.cglib.transform.impl.AddDelegateTransformer,net.sf.cglib.core.CodeEmitter)"
      - BranchSide: "net.sf.cglib.transform.impl.AddDelegateTransformer:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:74,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:75,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:75,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.sf.cglib.transform.impl.AddDelegateTransformer:76,1"
      Dst: "[net.sf.cglib.transform.impl.AddDelegateTransformer$1].<init>(net.sf.cglib.transform.impl.AddDelegateTransformer,net.sf.cglib.core.CodeEmitter)"
    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: "[net.sf.cglib.reflect.FastClassEmitter$3].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$3"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 154
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].indexOf(java.lang.Object)"
    - "[java.util.ArrayList].indexOf(java.lang.Object)"
    - "[jaz.Zer].indexOf(java.lang.Object)"
    - "[java.util.Vector].indexOf(java.lang.Object)"
    - "[sun.awt.util.IdentityArrayList].indexOf(java.lang.Object)"
    - "[java.util.AbstractList].indexOf(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].indexOf(java.lang.Object)"
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.List].indexOf(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:151,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:151,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:152,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.FastClassEmitter$3].processDefault()"
    functionSourceFile: "net.sf.cglib.reflect.FastClassEmitter$3"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:155,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.reflect.FastClassEmitter$3:156,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].<init>()"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2:82,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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].apply(net.sf.cglib.core.AbstractClassGenerator)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator"
    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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].apply(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].apply(net.sf.cglib.core.AbstractClassGenerator)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2:82,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$2].apply(net.sf.cglib.core.AbstractClassGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.EmitUtils$3].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$3"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$3:225,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.sf.cglib.core.EmitUtils$3:225,1"
      Dst: "[java.lang.Integer].valueOf(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: "[net.sf.cglib.proxy.Enhancer$2].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$2"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 589
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member,int)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.Enhancer$2:585"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.Enhancer$2:588"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.Enhancer$2:587"
        BranchSideFuncs:
        - "getMethodInfo(java.lang.reflect.Member,int)"
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$2:581,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "net.sf.cglib.proxy.Enhancer$2:585,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.proxy.Enhancer$2:585,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.Enhancer$2:588,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member,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: 3
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1].<init>()"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:49,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: "[net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1].accept(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[net.sf.cglib.core.TypeUtils].isPrivate(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:50"
        BranchSideFuncs:
        - "isPrivate(int)"
        - "indexOf(int)"
    - Branch String: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:51"
      Branch Sides:
      - BranchSide: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:50"
        BranchSideFuncs:
        - "isPrivate(int)"
        - "indexOf(int)"
    Callsites:
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:51,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isPrivate(int)"
    - Src: "net.sf.cglib.transform.impl.UndeclaredThrowableStrategy$1:51,1"
      Dst: "[java.lang.String].indexOf(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: 5
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.core.EmitUtils$15].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$15"
    linkageType: ""
    functionLinenumber: 831
    functionLinenumberEnd: 833
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.EmitUtils$10].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$15:832,1"
      Dst: "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.core.EmitUtils$15:832,1"
      Dst: "[net.sf.cglib.core.TypeUtils].emulateClassGetName(org.objectweb.asm.Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].<init>(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3:94,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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].apply(net.sf.cglib.core.AbstractClassGenerator)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.AbstractClassGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[net.sf.cglib.proxy.Enhancer].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - "[net.sf.cglib.proxy.Enhancer].wrapCachedClass(java.lang.Class)"
    - "[net.sf.cglib.core.AbstractClassGenerator].wrapCachedClass(java.lang.Class)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3:96,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].generate(net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData)"
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3:97,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].wrapCachedClass(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: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].apply(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].apply(net.sf.cglib.core.AbstractClassGenerator)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3:94,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3].apply(net.sf.cglib.core.AbstractClassGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:55,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].setInterface(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].setTargetClass(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].create()"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.reflect.ConstructorDelegate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.reflect.ConstructorDelegate$ConstructorKey].newInstance(java.lang.String,java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:67,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:67,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:68,1"
      Dst: "[net.sf.cglib.reflect.ConstructorDelegate$ConstructorKey].newInstance(java.lang.String,java.lang.String)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:69,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:73,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:77,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 114
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.ReflectUtils].findNewInstance(java.lang.Class)"
    - "[java.lang.reflect.Method].getReturnType()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].load_args()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    functionUses: 3
    ICount: 46
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.ConstructorDelegate$Generator:84"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.ConstructorDelegate$Generator:89"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.ConstructorDelegate$Generator:88"
        BranchSideFuncs:
        - "getParameterTypes()"
        - "getDeclaredConstructor(java.lang.Class[])"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:81,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:81,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:83,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findNewInstance(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:84,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:84,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:85,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:89,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:89,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:94,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:97,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:99,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:95,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:101,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:102,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:104,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getSignature(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:105,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getExceptionTypes(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:103,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:106,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:107,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:108,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_args()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:109,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:110,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:111,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:112,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: 5
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.ConstructorDelegate$Generator:116,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(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: "[net.sf.cglib.reflect.ConstructorDelegate$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.ConstructorDelegate$Generator"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$2].processCase(java.lang.Object,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$2"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 146
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.beans.PropertyDescriptor].getReadMethod()"
    - "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].swap()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[java.beans.PropertyDescriptor].getWriteMethod()"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 4
    ICount: 37
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "net.sf.cglib.beans.BeanMapEmitter$2:131"
      Branch Sides:
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter$2:134"
        BranchSideFuncs:
        - "aconst_null()"
      - BranchSide: "net.sf.cglib.beans.BeanMapEmitter$2:133"
        BranchSideFuncs:
        - "box(org.objectweb.asm.Type)"
        - "getReadMethod()"
        - "dup()"
        - "getReturnType()"
    Callsites:
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:130,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:131,1"
      Dst: "[java.beans.PropertyDescriptor].getReadMethod()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:132,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aconst_null()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:134,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:135,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:136,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:137,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:137,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:137,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].box(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:139,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].swap()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:140,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:141,1"
      Dst: "[java.beans.PropertyDescriptor].getWriteMethod()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:142,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:142,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.beans.BeanMapEmitter$2:144,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.beans.BeanMapEmitter$2].processDefault()"
    functionSourceFile: "net.sf.cglib.beans.BeanMapEmitter$2"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    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: "[net.sf.cglib.core.EmitUtils$14].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$14"
    linkageType: ""
    functionLinenumber: 790
    functionLinenumberEnd: 794
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.BitSet].<init>()"
    - "[net.sf.cglib.core.EmitUtils].member_helper_type(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$14:791,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.sf.cglib.core.EmitUtils$14:791,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.EmitUtils$14:792,1"
      Dst: "[java.util.BitSet].<init>()"
    - Src: "net.sf.cglib.core.EmitUtils$14:792,1"
      Dst: "[net.sf.cglib.core.EmitUtils].member_helper_type(net.sf.cglib.core.CodeEmitter,java.util.List,net.sf.cglib.core.ObjectSwitchCallback,net.sf.cglib.core.EmitUtils$ParameterTyper,org.objectweb.asm.Label,org.objectweb.asm.Label,java.util.BitSet)"
    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: "[net.sf.cglib.core.EmitUtils$14].processDefault()"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$14"
    linkageType: ""
    functionLinenumber: 794
    functionLinenumberEnd: 797
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$14:795,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    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: "[net.sf.cglib.util.ParallelSorter$IntComparer].<init>(int[])"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$IntComparer"
    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: "net.sf.cglib.util.ParallelSorter$IntComparer:207,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: "[net.sf.cglib.util.ParallelSorter$IntComparer].compare(int,int)"
    functionSourceFile: "net.sf.cglib.util.ParallelSorter$IntComparer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    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: "[net.sf.cglib.core.DuplicatesPredicate].evaluate(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.DuplicatesPredicate"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:104"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:103"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "contains(java.lang.Object)"
        - "create(java.lang.reflect.Method)"
    - Branch String: "net.sf.cglib.core.DuplicatesPredicate:104"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.DuplicatesPredicate:103"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "contains(java.lang.Object)"
        - "create(java.lang.reflect.Method)"
    Callsites:
    - Src: "net.sf.cglib.core.DuplicatesPredicate:104,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:104,1"
      Dst: "[net.sf.cglib.core.MethodWrapper].create(java.lang.reflect.Method)"
    - Src: "net.sf.cglib.core.DuplicatesPredicate:104,1"
      Dst: "[java.util.Set].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: 5
    CyclomaticComplexity: 3
  - functionName: "[net.sf.cglib.proxy.Enhancer$4].processCase(int,org.objectweb.asm.Label)"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$4"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 973
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.objectweb.asm.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].goTo(org.objectweb.asm.Label)"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.Enhancer$4:967,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.Enhancer$4:968,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$4:969,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.Enhancer$4:970,1"
      Dst: "[net.sf.cglib.proxy.Enhancer].getCallbackField(int)"
    - Src: "net.sf.cglib.proxy.Enhancer$4:970,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.Enhancer$4:971,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].goTo(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: "[net.sf.cglib.proxy.Enhancer$4].processDefault()"
    functionSourceFile: "net.sf.cglib.proxy.Enhancer$4"
    linkageType: ""
    functionLinenumber: 974
    functionLinenumberEnd: 976
    functionDepth: 0
    returnType: "void"
    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: "[net.sf.cglib.core.CollectionUtils].<init>()"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    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: "net.sf.cglib.core.CollectionUtils:26,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: "[net.sf.cglib.core.CollectionUtils].reverse(java.util.Map,java.util.Map)"
    functionSourceFile: "net.sf.cglib.core.CollectionUtils"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.AbstractMap].keySet()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.awt.RenderingHints:java.security.Provider:java.util.AbstractMap: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:net.sf.cglib.beans.BeanMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.sf.cglib.core.CollectionUtils:43"
      Branch Sides:
      - BranchSide: "net.sf.cglib.core.CollectionUtils:47"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "next()"
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.core.CollectionUtils:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.sf.cglib.core.CollectionUtils:43,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.core.CollectionUtils:43,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.core.CollectionUtils:43,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.core.CollectionUtils:44,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.core.CollectionUtils:45,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.core.CollectionUtils:45,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: 4
    CyclomaticComplexity: 2
  - functionName: "[net.sf.cglib.proxy.MethodInterceptorGenerator].<init>()"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    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: "net.sf.cglib.proxy.MethodInterceptorGenerator: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: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodField(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:77,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:77,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodProxyField(net.sf.cglib.core.Signature)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.sf.cglib.core.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.Signature].getName()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:80,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:80,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(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: "[net.sf.cglib.proxy.MethodInterceptorGenerator].generate(net.sf.cglib.core.ClassEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 135
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[jaz.Zer].next()"
    - "[java.nio.file.Files$2].next()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.proxy.Enhancer$6].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodField(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodProxyField(net.sf.cglib.core.Signature)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.core.Signature].toString()"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.transform.impl.AccessFieldTransformer].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.ReflectUtils$5].getExceptionTypes()"
    - "[net.sf.cglib.core.CodeEmitter$State].getExceptionTypes()"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].superHelper(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,net.sf.cglib.proxy.CallbackGenerator$Context)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.proxy.Enhancer$6].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].make_label()"
    - "[net.sf.cglib.proxy.Enhancer$6].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - "[net.sf.cglib.proxy.Enhancer$6].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - "[net.sf.cglib.core.CodeEmitter].create_arg_array()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].generateFindProxy(net.sf.cglib.core.ClassEmitter,java.util.Map)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    functionUses: 1
    ICount: 56
    EdgeCount: 56
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:85"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:133"
        BranchSideFuncs:
        - "next()"
        - "getMethodField(net.sf.cglib.core.Signature)"
        - "getSignature()"
        - "getExceptionTypes()"
        - "load_this()"
        - "getMethodProxyField(net.sf.cglib.core.Signature)"
        - "begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
        - "getIndex(net.sf.cglib.core.MethodInfo)"
        - "getArgumentTypes()"
        - "declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
        - "ifnull(org.objectweb.asm.Label)"
        - "toString()"
        - "beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
        - "make_label()"
        - "emitCallback(net.sf.cglib.core.CodeEmitter,int)"
        - "put(java.lang.Object,java.lang.Object)"
        - "dup()"
        - "getImplSignature(net.sf.cglib.core.MethodInfo)"
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:132"
        BranchSideFuncs:
        - "generateFindProxy(net.sf.cglib.core.ClassEmitter,java.util.Map)"
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:117"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:120"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:119"
        BranchSideFuncs:
        - "create_arg_array()"
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:84,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:85,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:87,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:88,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:90,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodField(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:91,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodProxyField(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:93,1"
      Dst: "[net.sf.cglib.core.Signature].toString()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:93,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:94,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].declare_field(int,java.lang.String,org.objectweb.asm.Type,java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:102,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getExceptionTypes()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:100,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:103,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].superHelper(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,net.sf.cglib.proxy.CallbackGenerator$Context)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:104,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:105,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:108,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:109,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_label()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:110,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getIndex(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:110,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitCallback(net.sf.cglib.core.CodeEmitter,int)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:111,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:112,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].ifnull(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:114,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:115,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].getfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:117,1"
      Dst: "[net.sf.cglib.core.Signature].getArgumentTypes()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:120,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].create_arg_array()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:124,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_interface(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:125,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:125,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].unbox_or_zero(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:128,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].mark(org.objectweb.asm.Label)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:133,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].generateFindProxy(net.sf.cglib.core.ClassEmitter,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: 3
  - functionName: "[net.sf.cglib.proxy.MethodInterceptorGenerator].superHelper(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,net.sf.cglib.proxy.CallbackGenerator$Context)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.core.MethodInfo"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - "[net.sf.cglib.core.MethodInfo].toString()"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.proxy.Enhancer$6].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    functionUses: 2
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:138"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:141"
        BranchSideFuncs:
        - "toString()"
        - "throw_exception(org.objectweb.asm.Type,java.lang.String)"
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:140"
        BranchSideFuncs:
        - "emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
        - "load_this()"
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:138,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:138,1"
      Dst: "[net.sf.cglib.core.TypeUtils].isAbstract(int)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:139,1"
      Dst: "[net.sf.cglib.core.MethodInfo].toString()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:139,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:139,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].throw_exception(org.objectweb.asm.Type,java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:141,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:142,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)"
    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: "[net.sf.cglib.proxy.MethodInterceptorGenerator].generateFindProxy(net.sf.cglib.core.ClassEmitter,java.util.Map)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 238
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].<init>(net.sf.cglib.proxy.MethodInterceptorGenerator,net.sf.cglib.core.CodeEmitter,java.util.Map)"
    - "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.awt.RenderingHints].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.HashSet].toArray(java.lang.Object[])"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 18
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:217,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:220,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:221,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:222,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator$2].<init>(net.sf.cglib.proxy.MethodInterceptorGenerator,net.sf.cglib.core.CodeEmitter,java.util.Map)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:233,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:233,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:232,1"
      Dst: "[net.sf.cglib.core.EmitUtils].string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:236,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_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: "[net.sf.cglib.proxy.MethodInterceptorGenerator].generateStatic(net.sf.cglib.core.CodeEmitter,net.sf.cglib.proxy.CallbackGenerator$Context,java.util.List)"
    functionSourceFile: "net.sf.cglib.proxy.MethodInterceptorGenerator"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 215
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.sf.cglib.core.CodeEmitter"
    - "net.sf.cglib.proxy.CallbackGenerator$Context"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter].push(int)"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'()"
    - "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].make_local()"
    - "[net.sf.cglib.core.EmitUtils].load_class_this(net.sf.cglib.core.CodeEmitter)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - "[jaz.Zer].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[net.sf.cglib.beans.FixedKeySet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[java.util.Properties].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.awt.RenderingHints].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[java.nio.file.Files$2].next()"
    - "[jaz.Zer].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.awt.RenderingHints].get(java.lang.Object)"
    - "[net.sf.cglib.beans.BeanMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.LinkedList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.Vector].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.util.ArrayList].size()"
    - "[sun.awt.util.IdentityArrayList].size()"
    - "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - "[jaz.Zer].get(int)"
    - "[sun.awt.util.IdentityArrayList].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.Vector].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.Signature].getName()"
    - "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - "[net.sf.cglib.core.CodeEmitter].aastore()"
    - "[net.sf.cglib.core.Signature].getDescriptor()"
    - "[net.sf.cglib.core.ClassEmitter$1].getType()"
    - "[net.sf.cglib.core.ReflectUtils$6].getType()"
    - "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.proxy.Enhancer$6].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodField(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodProxyField(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.core.CodeEmitter].pop()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    - "[net.sf.cglib.core.ClassInfo].getType()"
    - "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    functionUses: 1
    ICount: 88
    EdgeCount: 120
    BranchProfiles:
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:170"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:214"
        BranchSideFuncs:
        - "'newarray'(org.objectweb.asm.Type)"
        - "next()"
        - "get(java.lang.Object)"
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:213"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:176"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:188"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
        - "load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
        - "getType()"
        - "invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
        - "size()"
    - Branch String: "net.sf.cglib.proxy.MethodInterceptorGenerator:195"
      Branch Sides:
      - BranchSide: "net.sf.cglib.proxy.MethodInterceptorGenerator:211"
        BranchSideFuncs:
        - "pop()"
    Callsites:
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:160,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(int)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:161,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:162,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].putfield(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:164,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:166,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class_this(net.sf.cglib.core.CodeEmitter)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:167,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:169,1"
      Dst: "[net.sf.cglib.core.CollectionUtils].bucket(java.util.Collection,net.sf.cglib.core.Transformer)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:170,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:170,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:171,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:173,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:174,1"
      Dst: "[java.util.List].size()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:175,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].'newarray'(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:177,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:178,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:179,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:181,1"
      Dst: "[net.sf.cglib.core.Signature].getName()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:181,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].push(java.lang.String)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:182,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].aastore()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:185,1"
      Dst: "[net.sf.cglib.core.Signature].getDescriptor()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:189,1"
      Dst: "[net.sf.cglib.core.ClassInfo].getType()"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:189,1"
      Dst: "[net.sf.cglib.core.EmitUtils].load_class(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:192,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:193,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_static(org.objectweb.asm.Type,net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:198,1"
      Dst: "[net.sf.cglib.proxy.CallbackGenerator$Context].getImplSignature(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:201,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].array_load(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:202,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodField(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:204,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:210,1"
      Dst: "[net.sf.cglib.proxy.MethodInterceptorGenerator].getMethodProxyField(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.proxy.MethodInterceptorGenerator:212,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].pop()"
    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: 10
    CyclomaticComplexity: 4
  - functionName: "[net.sf.cglib.core.EmitUtils$13].transform(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.core.EmitUtils$13"
    linkageType: ""
    functionLinenumber: 783
    functionLinenumberEnd: 785
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.EmitUtils$10].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.core.EmitUtils$13:784,1"
      Dst: "[net.sf.cglib.core.EmitUtils$ParameterTyper].getParameterTypes(net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.core.EmitUtils$13:784,1"
      Dst: "[java.lang.Integer].valueOf(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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].<init>()"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:81,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].<init>(net.sf.cglib.core.AbstractClassGenerator$Source)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MulticastDelegate$Generator].getDefaultClassLoader()"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:85,1"
      Dst: "[java.lang.Class].getClassLoader()"
    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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].getProtectionDomain()"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 2
    returnType: "java.security.ProtectionDomain"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:89,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getProtectionDomain(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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].setInterface(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    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: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[net.sf.cglib.reflect.MulticastDelegate$Generator].create()"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "net.sf.cglib.reflect.MulticastDelegate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].create(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:97,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:97,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].setNamePrefix(java.lang.String)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:98,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].create(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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].generateClass(org.objectweb.asm.ClassVisitor)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 135
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.objectweb.asm.ClassVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator].emitProxy(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddDelegateTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.UndeclaredThrowableTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.AddInitTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.transform.impl.InterceptFieldTransformer].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - "[net.sf.cglib.core.CodeEmitter].dup()"
    - "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this()"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - "[net.sf.cglib.transform.impl.FieldProviderTransformer].end_class()"
    - "[net.sf.cglib.core.ClassEmitter].end_class()"
    - "[net.sf.cglib.transform.impl.AddPropertyTransformer].end_class()"
    functionUses: 3
    ICount: 36
    EdgeCount: 36
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:102,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].findInterfaceMethod(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:102,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].getMethodInfo(java.lang.reflect.Member)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:104,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].<init>(org.objectweb.asm.ClassVisitor)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:107,1"
      Dst: "[net.sf.cglib.core.AbstractClassGenerator].getClassName()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:109,1"
      Dst: "[org.objectweb.asm.Type].getType(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:105,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_class(int,int,java.lang.String,org.objectweb.asm.Type,org.objectweb.asm.Type[],java.lang.String)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:111,1"
      Dst: "[net.sf.cglib.core.EmitUtils].null_constructor(net.sf.cglib.core.ClassEmitter)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:114,1"
      Dst: "[net.sf.cglib.reflect.MulticastDelegate$Generator].emitProxy(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:117,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].begin_method(int,net.sf.cglib.core.Signature,org.objectweb.asm.Type[])"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:118,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].new_instance_this()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:119,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].dup()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:120,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_constructor_this()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:121,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:122,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:126,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:127,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_arg(int)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:128,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].checkcast(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:129,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].invoke_virtual_this(net.sf.cglib.core.Signature)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:133,1"
      Dst: "[net.sf.cglib.core.ClassEmitter].end_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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].emitProxy(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 169
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.sf.cglib.core.ClassEmitter"
    - "net.sf.cglib.core.MethodInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.CodeEmitter$State].getModifiers()"
    - "[net.sf.cglib.core.ReflectUtils$5].getModifiers()"
    - "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - "[net.sf.cglib.core.Signature].getReturnType()"
    - "[net.sf.cglib.core.ReflectUtils$5].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter$State].getSignature()"
    - "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].zero_or_null(org.objectweb.asm.Type)"
    - "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].load_this()"
    - "[net.sf.cglib.core.CodeEmitter].super_getfield(java.lang.String,org.objectweb.asm.Type)"
    - "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].<init>(net.sf.cglib.reflect.MulticastDelegate$Generator,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,boolean,net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - "[net.sf.cglib.core.CodeEmitter].return_value()"
    - "[net.sf.cglib.core.CodeEmitter].end_method()"
    - "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - "[net.sf.cglib.core.MethodInfo].getSignature()"
    functionUses: 1
    ICount: 37
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.sf.cglib.reflect.MulticastDelegate$Generator:138"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:141"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:140"
        BranchSideFuncs:
        - "getSignature()"
        - "begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
        - "getReturnType()"
    - Branch String: "net.sf.cglib.reflect.MulticastDelegate$Generator:143"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:-1"
        BranchSideFuncs: []
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:-2"
        BranchSideFuncs: []
    - Branch String: "net.sf.cglib.reflect.MulticastDelegate$Generator:145"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:150"
        BranchSideFuncs:
        - "store_local(net.sf.cglib.core.Local)"
        - "zero_or_null(org.objectweb.asm.Type)"
        - "make_local(org.objectweb.asm.Type)"
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:149"
        BranchSideFuncs:
        - "process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
        - "<init>(net.sf.cglib.reflect.MulticastDelegate$Generator,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,boolean,net.sf.cglib.core.Local)"
        - "super_getfield(java.lang.String,org.objectweb.asm.Type)"
        - "load_this()"
    - Branch String: "net.sf.cglib.reflect.MulticastDelegate$Generator:163"
      Branch Sides:
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:166"
        BranchSideFuncs:
        - "load_local(net.sf.cglib.core.Local)"
      - BranchSide: "net.sf.cglib.reflect.MulticastDelegate$Generator:165"
        BranchSideFuncs:
        - "end_method()"
        - "return_value()"
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:138,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getModifiers()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:141,1"
      Dst: "[net.sf.cglib.core.EmitUtils].begin_method(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo,int)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:142,1"
      Dst: "[net.sf.cglib.core.MethodInfo].getSignature()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:142,1"
      Dst: "[net.sf.cglib.core.Signature].getReturnType()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:146,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].make_local(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:147,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].zero_or_null(org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:148,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].store_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:150,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_this()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:151,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].super_getfield(java.lang.String,org.objectweb.asm.Type)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:153,1"
      Dst: "[net.sf.cglib.reflect.MulticastDelegate$Generator$1].<init>(net.sf.cglib.reflect.MulticastDelegate$Generator,net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,boolean,net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:153,1"
      Dst: "[net.sf.cglib.core.EmitUtils].process_array(net.sf.cglib.core.CodeEmitter,org.objectweb.asm.Type,net.sf.cglib.core.ProcessArrayCallback)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:164,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].load_local(net.sf.cglib.core.Local)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:166,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].return_value()"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:167,1"
      Dst: "[net.sf.cglib.core.CodeEmitter].end_method()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      needClose: false
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[net.sf.cglib.reflect.MulticastDelegate$Generator].firstInstance(java.lang.Class)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - "[net.sf.cglib.reflect.MulticastDelegate].newInstance()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:172,1"
      Dst: "[net.sf.cglib.core.ReflectUtils].newInstance(java.lang.Class)"
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:172,1"
      Dst: "[net.sf.cglib.reflect.MulticastDelegate].newInstance()"
    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: "[net.sf.cglib.reflect.MulticastDelegate$Generator].nextInstance(java.lang.Object)"
    functionSourceFile: "net.sf.cglib.reflect.MulticastDelegate$Generator"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.sf.cglib.reflect.MulticastDelegate].newInstance()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.sf.cglib.reflect.MulticastDelegate$Generator:176,1"
      Dst: "[net.sf.cglib.reflect.MulticastDelegate].newInstance()"
    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: "[java.lang.ProcessBuilder].command(java.util.List)"
    functionSourceFile: "java.lang.ProcessBuilder"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 250
    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: 263
    functionLinenumberEnd: 268
    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: 278
    functionLinenumberEnd: 280
    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: 403
    functionLinenumberEnd: 405
    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: 420
    functionLinenumberEnd: 423
    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: 761
    functionLinenumberEnd: 768
    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: 792
    functionLinenumberEnd: 798
    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: 826
    functionLinenumberEnd: 832
    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: 847
    functionLinenumberEnd: 849
    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: 864
    functionLinenumberEnd: 866
    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: 881
    functionLinenumberEnd: 883
    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: 895
    functionLinenumberEnd: 897
    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: 909
    functionLinenumberEnd: 911
    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: 923
    functionLinenumberEnd: 925
    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: 949
    functionLinenumberEnd: 952
    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: 968
    functionLinenumberEnd: 970
    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: 986
    functionLinenumberEnd: 989
    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: 1072
    functionLinenumberEnd: 1074
    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: 1086
    functionLinenumberEnd: 1143
    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.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.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.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: 97
    functionLinenumberEnd: 99
    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.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: 126
    functionLinenumberEnd: 129
    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: 158
    functionLinenumberEnd: 165
    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
  - 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.io.InputStream].<init>()"
    functionSourceFile: "java.io.InputStream"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    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: 217
    functionLinenumberEnd: 219
    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: 278
    functionLinenumberEnd: 302
    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.nio.file.Files].createFile(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "java.nio.file.Files"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 654
    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: 693
    functionLinenumberEnd: 696
    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: 746
    functionLinenumberEnd: 790
    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: 871
    functionLinenumberEnd: 873
    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: 916
    functionLinenumberEnd: 918
    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: 969
    functionLinenumberEnd: 971
    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: 1010
    functionLinenumberEnd: 1012
    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: 1062
    functionLinenumberEnd: 1065
    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: 1105
    functionLinenumberEnd: 1108
    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: 1145
    functionLinenumberEnd: 1148
    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: 1184
    functionLinenumberEnd: 1186
    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: 1422
    functionLinenumberEnd: 1432
    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: 3488
    functionLinenumberEnd: 3501
    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: 3553
    functionLinenumberEnd: 3564
    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: 3606
    functionLinenumberEnd: 3608
    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: 4007
    functionLinenumberEnd: 4019
    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.lang.Runtime].exec(java.lang.String)"
    functionSourceFile: "java.lang.Runtime"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 313
    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: 352
    functionLinenumberEnd: 354
    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: 407
    functionLinenumberEnd: 416
    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: 449
    functionLinenumberEnd: 451
    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: 492
    functionLinenumberEnd: 494
    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: 587
    functionLinenumberEnd: 592
    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.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.File].<init>(java.lang.String,int)"
    functionSourceFile: "java.io.File"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 255
    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: 260
    functionLinenumberEnd: 267
    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: 276
    functionLinenumberEnd: 284
    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: 316
    functionLinenumberEnd: 334
    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: 359
    functionLinenumberEnd: 377
    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: 414
    functionLinenumberEnd: 442
    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: 1020
    functionLinenumberEnd: 1027
    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: 1047
    functionLinenumberEnd: 1056
    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: 1085
    functionLinenumberEnd: 1095
    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: 1399
    functionLinenumberEnd: 1412
    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: 2080
    functionLinenumberEnd: 2111
    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: 2152
    functionLinenumberEnd: 2154
    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.lang.System].console()"
    functionSourceFile: "java.lang.System"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 267
    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: 406
    functionLinenumberEnd: 411
    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: 733
    functionLinenumberEnd: 740
    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: 829
    functionLinenumberEnd: 837
    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: 864
    functionLinenumberEnd: 872
    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: 1013
    functionLinenumberEnd: 1020
    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: 1062
    functionLinenumberEnd: 1069
    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: 1815
    functionLinenumberEnd: 1818
    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: 1856
    functionLinenumberEnd: 1859
    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: 1892
    functionLinenumberEnd: 1895
    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.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: 710
    functionLinenumberEnd: 713
    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: 721
    functionLinenumberEnd: 727
    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: 735
    functionLinenumberEnd: 741
    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: 749
    functionLinenumberEnd: 755
    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: 763
    functionLinenumberEnd: 769
    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: 777
    functionLinenumberEnd: 783
    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: 791
    functionLinenumberEnd: 797
    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: 805
    functionLinenumberEnd: 811
    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: 819
    functionLinenumberEnd: 825
    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: 835
    functionLinenumberEnd: 842
    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: 887
    functionLinenumberEnd: 889
    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: 940
    functionLinenumberEnd: 942
    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
